如何成为一个优秀的程序员(12)
扎实的基础 , 完备的知识体系 , 我们在安排就业班课程体系的时候 , 正是以这两点为依据的 。 有的课程内容很少有学员在以后工作中会用到 , 但是缺了这一环就不成 为一个完备的知识体系 , 例如MMU和Cache , 那这种课该不该上呢?毫无疑问该上 。 有的课程培养一种基本的编程思想 , 例如通过C++来讲面向对象编程 , 通过Qt来讲面向对象、事件驱动和状态机编程 , 这些编程思想是程序员必备的基本素质 , 而C++和Qt可能有些学员以后工作用不到 , 那这种课该不该上呢?毫 无疑问该上 。 至于还有些人争论说C++不如Java用得多 , Qt不如GTK用得多 , 请翻回去看FAQ4 , 这种争论是无意义的 , 有工夫争论谁优谁劣 , 不如把 两种都学了 , 会更有收获 。
回到做驱动开发还是做应用开发更有前途的问题 。 我只能说 , 做好了都有前途 , 做不好都没有前途 , 只会做一样而完全不懂另一样是最没前途的 。 不要以为内核开发 者就不写应用程序 , Linus写了一个源代码管理系统Git来维护内核 , 因为觉得现有的源代码管理系统都不好用 。 牛人都是这样 , 需要什么就写什么 , 才不管 是kernel space还是user space 。 同样 , 做应用开发如果不懂内核 , 也没有办法很好地利用内核提供的服务写出性能最优的程序 。 做内核难 , 因为调试难 , 要跟踪大量的并发线程 , 因为 入门难 , 要写一个hello world都需要学很多知识 。 做应用也难 , 回头去看FAQ1 , 计算机科学从理论到实践大部分都在上面两层做文章 。 所以不存在哪个更难哪个更有前途的问题 , 任何关于哪个更难的讨论都是too naive的 。
推荐阅读
- 小鱼人|如何在新赛季稳定上分?善于抓失误的小鱼人,值得认真练上一波
- 打野|打野位突然变天,诸葛亮T3,芈月T2,赵云T1,他逆袭成为T0
- 雷神|原神:曾经有一个强力五星角色,却因各种“流言蜚语”,擦肩而过
- 阴阳师|阴阳师SR川猿强度如何 是否值得抽卡 改变斗技环境 大佬的新玩具
- 尹正|尹正事业再攀高峰,联手斗鱼直播平台:“晋级”成为特种兵
- 手机游戏|梦幻西游手游:活力如何换金币 一切都已给出 就看你的选择
- 次世代|韩国战队全军覆没,斗鱼选手实力强大,一人击溃一个队
- 手机游戏|LOL手游第一个世界赛,破晓杯火热开战,DKG能紧随EDG夺冠吗?
- 华佗|三国杀:两位\奶爸\,朱治与华佗比,强度如何呢?
- 亲朋上分|《亲朋上分》266391亲朋下分亲朋上下分永劫无间崔三娘技能介绍 崔三娘如何获得更多技能