• 程序猿之没事瞎吐槽


      闲来无事,也就看看大牛的技术博客,学习一些iOS8新知识和swift语言新特性,混迹于一些iOS开发交流群,没事看看大家提的问题,力所能及的帮着解决,一方面加深自己对某些问题的理解,另一方面也是为了更好的交流。不管论坛也好,技术群也好,总能看到大伙热烈且又广泛的讨论着各种问题,慢慢地发现了一些想吐槽的现象。

         1.  矫情型
         多半见于刚搞开发没多久的同学。的确对于一个之前没太多开发经验的新人来说,搞iOS开发不见得很容易。仅就界面而言吧,我们一般有三种方式来布局,纯代码、Interface Builder和story board,当他们接手这些项目的时候,如果项目是三种方式混杂,那就有一些挑战性了。三种布局都得有所了解,如果之前没有这方面的处理经验,是得需要消耗大把时间。就拿自己而言吧,当我接手旧项目时,所有的界面都是使用纯码实现的,而我当时自学了IB,看着都觉得头痛,一个简单的button竟然要六七行代码实现,当时觉得很繁琐,后来硬着头皮一点点啃下来,习惯后新项目就采取了纯码方式,不为别的,就是觉得属性放在一起看起来也一目了然,代码易读性相对比较高。当然整个后续开发中也还有很多其他问题等着你。
        ~~~扯远了,之所以说矫情,因为某个时间段群里谈论的问题都是感觉IOS很难学啊,有木有中文版的Xcode,英文文档完全看不懂啊,blablablabla~~遇到难题抱怨一下很正常,但是如果一段时间后还是在探讨此类问题多少会让人很反感,大多数人可能会置之不理不闻不问,刚开始我也就抱着事不关己的心理看看就罢了,慢慢发现伴随着一批又一批的新人加群此类现象依然没有消停,整个人彻底怒了,直接在群里开骂。至少在我看来,如果没有战胜这些难题的信心,真的没有太大必要继续做程序猿,后续的debug已经够你难受,异常crash搞到精神崩溃。
      说这么多,无非就是程序猿来虚的没用,技术实力都是稳扎稳打的活儿,能不能干事看你心态就知道。脚踏实地的写几行代码,慢慢去调试,不懂的问题去问远比抱怨来得实际。

      2. 遇事自己不尝试解决型
      好,代码已经写完了:-) ,让我运行一下。   我去,全线飘红,怎么办???    咩事,我有特别的技能,QQ截图后发到群里面,补一句:各位大神帮我看看,为啥出了这个问题啊?    静静等待一会,有人会根据错误提示提供各种解决办法,follow his advice,尝试下改改,OK,运行正常,哈哈哈哈哈~ 谢谢XXX大大!!! 然后继续写下一个模块的代码,感觉自己棒棒哒!!!    不难发现我们周边很多这样的例子,一旦遇到报错,截图工具基本都是秒开,如果你回复让对方看看上面的报错信息,对方就会说看不懂。。 运行出现的问题很多由于build settings中设置不当,比如路径加载错误,或者某些重复声明的变量等等,也许报错信息中部分单词可能不是很熟悉,但是你有有道词典或者google翻译啊。 即使你不知道怎么解决,不知道怎么搜关键字,你也可以把整个错误信息复制扔到google上,依然能得到大把的答案。 事实上,你遇到的绝大部分问题别人都遇到过!除非你是最早尝鲜的那一批人。     
      说到这个,我突然想起身边还是有很多程序猿习惯使用百度去搜索答案。前段时间谷歌被墙,公司也没搞VPN,相当苦逼,用了用百度,对此我能说呵呵么?后来找了google全球的IP,那段时间用着还不错,于是就分享到一些技术群里。估计使用的人多了,后来每天都会有几个IP段被封,还好有30M的数据,但查封的速度越来越快。当然有同学使用goagentx或者其他东西,现在也有一些浏览器提供梯子,不管如何,都可以找到访问google的方法。关于为何使用google而不用百度,这问题已经被嚼烂了,再说下去也没意思。 
      说这个问题其实意图很明显,有些问题当你花点时间尝试自己去解决,印象深刻一些,即使下次遇到同样的问题,也能迅速找到问题的根源。 除非事情特别紧急,一般情况下不要遇到问题不思考就提问。

      3. 人云亦云型
      有时候项目产品设计的不符合苹果的UI交互指南,说难听点就是有点反人类,很多时候也许我们会默默接受这样的结果,认为我们的职责只是把功能实现了,产品做出来了就好,其他一概和自己没关系,那些都是产品狗的事。殊不知产品的后期打磨包括UI或者需求的改动都会给我们带来许多工作量。特别是一些创业型小公司,本身这方面的人手不够,除了自己做产品,多少都会接一些外包的活,然而客户的需求总是多样的。曾经有个同事专门负责某公司的一个外包活,客户改动很频繁,基本属于一天一个想法那种类型,很多新改动的东西隔几天后就会被推倒重来,后来这哥们怒了,当着很多人面说如果每天都是改来改去,我不干了,你要改就找其他人给你改之类的话吧,客户当时懵了。经过上次那件事后,客户更新频率也低了很多,有较大改动也会询问他的意见后做决定。 
      说上面这件事,不是鼓励大家跟客户对着干,毕竟很多时候我们要以公司利益为主,适当争取产品的话语权,而不是对产品设计唯命是从,我相信即使BAT这样的大公司程序猿也不一定没有话语权。这也在一定程度上减小了工作量,加快产品的开发进度。所以当你认为产品的设计或者功能存在不合理的地方的时候,要勇于提出来,并讲出自己理由,即使最后不被采纳,至少大家也会一定程度上考量你的建议,同时也加强了自身对产品的感悟和理解,后续的开发至少也不会有抵触心理。 讲这一点,主要是因为我在群里经常看到有人吐槽项目产品渣渣的设计。一个产品本来就需要各种批判和打磨,最后才能成为精品。

      废话说了一堆,最后希望大家在IOS开发的路上越走越好,早日做出属于自己的APP。


    PS: IOS开发进阶交流群:375689803 。 欢迎大家加入,交流项目开发经验。  

  • 相关阅读:
    No enclosing instance of type XXX is accessible.
    No enclosing instance of type XXX is accessible.
    Websphere 学习(一)
    List去重与equals/hashcode
    List去重与equals/hashcode
    org.apache.log4j.Logger详解
    org.apache.log4j.Logger详解
    onclick="return checkForm()" 、onclick="checkForm();return false;"解析 与 return false;
    onclick="return checkForm()" 、onclick="checkForm();return false;"解析 与 return false;
    大数据基础第一天内容
  • 原文地址:https://www.cnblogs.com/howcoldtohowtocode/p/3924727.html
Copyright © 2020-2023  润新知