百科问答小站 logo
百科问答小站 font logo



程序员如何保持技术敏感度? 第1页

  

user avatar   guo-zhong-ming-26 网友的相关建议: 
      

just do it.

我自己的经验是: 技术一定要固化成某种方便调用的库,才算是真正掌握了。否则,时间一长,就会遗忘,成为遗失的技术。

知道一种c/c++技术可能比现有的 流行技术更优,弄懂主要思路后,就赶紧去实现一遍,保存在 c/c++ 库里,实现的时候从底层数据/代码流的角度,或者说从cpu硬件的角度,去分析可能的瓶颈,然后不断的修改源码,反复的测试,最终都会有非常好的性能,原因在于长期积累的经验,反复优化,哪天又想到一个优化的思路,就赶紧固化为代码立即测试,积累久了,就有很多开箱即用的高性能的库代码。

时间长了,c/c++库里面一堆的黑科技,随便拿出来几个都很厉害,例如: 最底层替换一些时钟周期比较大的基础硬件运算,例如整数除法有比 Intel九代之前的cpu硬件除法指令快5倍的软件算法,64bit 移位(类似1 << N之类),有比Intel cpu硬件移位快3倍的软件算法。

c++软件算法,一堆比std库更快的class, 包括常用的vector, string, deque, unordered-map/set 等等,一些函数有数倍的性能提升。写应用层或者高层代码,同样的算法,一些场合下,性能也会更好。

一些比较前沿的c++技术都有实现,包括更高并发的 wait-free 队列, 包括多生产者和多消费者队列等,比传统lock free算法快N倍;更快并且完全线程安全的下一代智能指针(功能和接口类似于shared ptr,安全性好太多了,多处使用了RCU技术);更安全的可重入的mutex锁;比传统thread local ptr的实现快N倍的thread local...一大堆好用可靠的高并发的组件,都是按照多线程防御编程模式加固过的,是完全线程安全的,代码复杂度非常高,考虑的极端场景很多,动辄数千行源码,不仅比多数库的实现更快,而且更稳定。写多线程应用代码时,使用库调用标准接口,更容易写出又快又稳定的代码,普通程序员操心的事情也少了很多,统一多线程的使用方法,集中解决多线程问题,实现更高的性能。

总之,就是要动手去做,只有脏了自己的手,才能有更深的领悟,只有最终把技术转化为可随时调用的库,并且在实践中灵活运用,才算是真正掌握了。知易行难,动手去做吧。


user avatar   lu-luce 网友的相关建议: 
      

我说几条:

多逛书店。多逛图书馆。多上china-pub。


user avatar   doodlewind 网友的相关建议: 
      

要想搞笑,低俗是最快速的手段。

日本的志村健在三俗的路上走了快40多年了,

现在依然还是依靠这个维持人气的。

可是,一直依靠低俗笑料

迟早会遇到玻璃天花板的。

日本有个叫 快乐亭黑的混血,是说单口相声的,

说的全部都是下三滥的笑料,不是一点,而是全部。

结果就是没人敢找他上电视,广播,或者剧场演出。

翻过来说,保持一点三俗笑料不用,纯靠幽默和擦边球的相声演员,

依然不多。

而且要一直维持这种作品的风格是极其困难的。

侯老,马老就是典范。

(马老后期说的很多小段,其实就是外国笑话,当然是自己加工过的)

反过来说

七口人这个死杠死口 的内容

说了有一百年了吧?

不用解说大家不还是听的懂?




  

相关话题

  为什么都说碎片化信息无用,我却感觉刷手机也可以学到很多东西? 
  如何看待程序员内卷的现象? 
  有人能够科普一下拉丁语命令式和表达命令的虚拟式之间的区别吗? 
  按照安排好的路线一直顺利的走下去,或者自己不断试错,很久之后才找到合适的路子,哪个更好呢?为什么? 
  体制内一定是混吃等死吗? 
  2023管理类联考如何备考? 
  为什么大家都说程序员需要好键盘? 
  如何变得会聊天? 
  编程真的能改变人的思维方式吗? 
  当努力后结果和不努力的人一样,那有什么用? 

前一个讨论
本人高中生疑似发现质数个数分布规律,下一步应该怎么做?
下一个讨论
为什么诸葛亮明确表示不仅想加九锡还想加十锡,如此行径,还有人认为他是忠臣?





© 2024-05-20 - tinynew.org. All Rights Reserved.
© 2024-05-20 - tinynew.org. 保留所有权利