我之所以写这篇文章是因为有一个朋友近期决定跻身软件开发的行业。我的这位朋友聪明,精力充沛,品貌兼优,又善于学习。每个人都认为这样的人才必将有一番作为。但是,在踏出第一步时,他依然有很多东西需要学习。
我和很多人一样一开始学习的是工具系列:语法和数据结构,调试器和编辑器。但实际上如何使用这些工具来编写好的软件——哪种可以工作的,能够解决问题的,很长一段时间不用维护的软件——却从来没有正式教给我们。学习这门手艺需要历经长时间的挫折和痛苦。
下面我要讲述一些在尝试这门手艺之前你需要学习的东西。关于软件开发你需要记住的最重要的事情是
1. 注释
在代码中注释的目的不是为了解释代码做什么——可以读取代码!注释目的是为了解释当你写代码的时候是如何思考的。
为什么你认为代码做到这一点很重要?其它地方发生了什么事使之变得有必要?在这种情况发生后其他人要小心什么后效?代码有没有按照你喜欢的方式做事情,亦或是用一种让你担心的方式?你为什么选择这种方式?还有什么其他的方法可供你选择?也许其他方法中有更好的?当时你在想什么?
在写完代码的半年后,你可能已经不记得上述任何问题的答案,哪怕是你自己的代码。所以,要写下来。这是无价的,当你试图弄清楚有些事情为什么坏了的时候。
2. 测试优先
你可以编写测试的代码以确保其他代码可正常工作。这样做出人意料的重要,但我们大多数人往往在这方面做得很糟糕,因为我们总会去做其他的事情。所以先要写测试。这是知道确保写测试的唯一途径。
3. 生活更轻松
计算机速度很快,没错吧?并且正在变得越来越快。你的大脑却没有越来越快。所以不要挑选那些使计算机更轻松的优化工具——挑选为人类而制造的工具。
4. 解决方案而不是写代码
写代码比解决问题更容易。
代码往往具有良好定义的输入和输出,一种可预测如何使用的方式,以及一个你可以说你已经完成了写代码这一任务的时间。问题就混乱得多,会涉及到个人和组织,并且有真实世界的约束,例如让人们实际使用你已经建立的东西。
解决问题比编写代码更重要。人们很容易忘记这一点,所以要谨记这一点。
最后,还有一件可能比其他剩下没有谈论的东西更重要的事情:
5. 不要放弃
软件正在日新月异地变化和发展。你永远不可能掌握所有。事实上,直到你准备放弃的那一刻,你依然没有资格说你已经懂得够多。不断学习,不断拓宽你的视野,保持睁大你的眼睛。
这个世界上总有一个地方,会让人们低下头来专注于一个小小的领域,但在我的经验中,有更多的地方值得人们去贪婪地学习并致力于解决碰到的任何问题。
总而言之,移动你的手指来改变世界意味着严肃的大脑延伸和新信息的不停涌入。但是尽管如此,它是如此致命的酷。
欢迎加入软件开发行业中来!
版权所有:武汉创美职业培训学校(北大青鸟武广校区)
招生电话:027-8555055024小时咨询QQ:752009195
公司地址:武汉市汉口解放大道557号中山广场7楼武汉北大青鸟网站:www.1bdqn.com武汉北大青鸟手机网站:wap.1bdqn.com