返回首页

神级程序员都在用什么工具?

105 2023-09-06 08:08 admin

一、神级程序员都在用什么工具?

普通码农一枚,分享一下自己最常使用的几个效率生产工具

目前还没看到神级程序员的回答,问题先码一下,坐等神级程序员。

下面本人抛砖引玉的回答:

1、关于架构设计和系统设计:会推荐几个自己常用的画图工具,这类工具可以帮助理清楚思路; 2、推荐8个实用的环境工具:工欲善其事必先利其器; 3、推荐7个优秀的开源项目:内功修炼得好,写代码效率自然提高。
程序员经典的计算机书籍(附pdf下载),全部豆瓣评分9.0以上~

一、架构设计&系统设计

写代码前做好系统分析设计,会使得进入编码阶段后代码思路比较清晰、避免返工、以及良好的实现团队结对编程

画图工具-UML类图、架构图、流程图、时序图等等。

推荐工具:Visual paradigm、OmniGraffle、ProcessOn、ppt、PlantUml。

俗话说,一图胜千言,图即是代码的指导思路

如下是示例功能流程图和数据流程图:

如下是Flink的时间戳分配器类图:

Flink架构图:

另外,关于系统设计再推荐一本备受好评的神书:《数据密集型应用系统设计(DDIA:Design Data Intensive Application)》。

这本书在各大网站的评价非常高。

Amazon:

Googlereads:

那么它到底是一本什么样的书呢?

现今,尤其是在互联网领域,大多数应用都属于数据密集型应用。本书从底层数据结构到顶层架构设计,将数据系统设计中的精髓娓娓道来。理论结合实践,给出了很多实际场景中遇到的问题以及应对方案,能让人少走很多弯路。

涵盖了分布式系统设计的方方面面,复杂的事情深入浅出,浅显易懂。另外书后给出了很多参考论文资料。

-----应要求更新一下-----

很多人私信我要影印版的购买链接,我当初是花了好几百大洋买的。

帮大家在京东和天猫找了,基本都没货,好在【知乎官方自营】上架了这本书,价格也非常美丽,大家可以去抢:

中译本也可以看,翻译非常的不错:

二、环境工具

1、Git

版本控制工具,不仅是代码,文档之类的也需要常做版本以及备份,防止重要资料丢失。

2、多显示器

我一般平台用3个显示器:一个用来显示线上系统的运行状态的监控、一个用来看文档、一个用来敲代码。还有就是机械键盘。

3、信息搜索

  • google(非百度,不要怕看不懂英文)
  • Stack Overflow:上面高手如云,而且非常热心。
  • github
  • 各个项目的官方手册(MySQL、Flink、Redis等等,官方文档是最权威最新的资料)
  • https://www.coursera.org/
  • http://www.programcreek.com/

4、Alfred

超级好用的查询和搜索工具:

5、VIM

VIM用熟练后,完全可以脱离鼠标,并且效率提高几倍。

6、笔记工具

推荐onenote,随时随地记录自己的想法和总结。

7、postman

非常好用的http请求调试工具。

8、文档编辑

推荐MacDown:一款优秀的mac平台的markdown编辑,客户端贼好用。

程序员必看的计算机经典书籍(附pdf下载),全部豆瓣评分9.0以上~

三、内功修炼

多看优秀开源项目的代码,尽量参与进去,不论是maillist、QQ/钉钉群组等等,可以尝试从编写文档、写测试用例开始入手,逐步切入核心功能。

参与优秀的开源项目可以和业界优秀的程序员大神一起结对编程,开阔思路,掌握优秀的代码编写风格、设计模式和技巧。

在此推荐几个业界有名的优秀的开源项目:

1、Redis:Redis

Redis的性能极高且拥有丰富的数据类型,同时,Redis所有操作都是原子性的,也支持对几个操作合并后原子性的执行。另外,Redis有丰富的扩展特性,它支持publish/subscribe, 通知,key 过期等等特性。 Redis更为优秀的地方在于,它的代码风格极其精简,整个源码只有23000行,很有利于阅读和赏析。

2、RocketMQ:Apache RocketMQ

阿里巴巴开源的消息中间件,久经双11大促流量洪峰考验。

3、Flink:Stateful Computations over Data Streams

Apache Flink是由Apache软件基金会开发的开源流处理框架,其核心是用JavaScala编写的分布式流数据流引擎。Flink以数据并行管道方式执行任意流数据程序,Flink的流水线运行时系统可以执行批处理和流处理程序。此外,Flink的运行时本身也支持迭代算法的执行。

Flink提供高吞吐量、低延迟的流数据引擎以及对事件-时间处理和状态管理的支持。Flink应用程序在发生机器故障时具有容错能力,并且支持exactly-once语义。程序可以用Java、Scala、PythonSQL等语言编写,并自动编译和到在集群或云环境中运行的数据流程序。

4、Google guava:Google提供的java库函数,guava cache和guava限流的实现很有参考价值。

5、sharding-jdbc:数据库分库分表、读写分离的一个中间件。

6、RxJava:java平台的Reactive 扩展。

7、Spring:这就不解释了。

最后再推荐几个优秀的前沿信息来源

  • infoq
  • 《美团技术博客》
  • 公众号-阿里技术
  • 公众号-高可用技术
  • 业界有名的会议:archsummit 架构师大会、flink forward

文末再贴几个我的其他回答,可能会有你需要的:

整理的Java从入门到进阶的书籍阅读顺序,已经2400+赞和收藏,是知乎的热门内容:

关于JAVA的书籍最佳阅读顺序,大家有什么建议?

总结的本人在校期间C++的学习路径,感兴趣的可以看看:

想学习C++,应该怎么开始入手?

给计算机专业大一新生的一些肺腑建议

有哪些给计算机科学与技术专业大一新生的建议?

二、程序员应该拜什么神?

有神仙是程序员出身吗?其实想拜神的话一般就拜 财神 就行了,或者再加上 关二爷。

三、程序员p级怎么划分的?

1.初级资格:程序员、网络管理员、多媒体应用制作技术员、电子商务技术员、信息系统运行管理员、网页制作员、信息处理技术员。

2.中级资格:软件评测师、软件设计师、软件过程能力评估师、网络工程师、多媒体应用设计师、嵌入式系统设计师、计算机辅助设计师、电子商务设计师、系统集成项目管理工程师、信息系统监理师、信息安全工程师、数据库系统工程师、信息系统管理工程师、计算机硬件工程师、信息技术支持工程师。

四、5级程序员是什么水平?

1. 5级程序员是比较高级的程序员水平。2. 因为在一般的程序员职业晋升体系中,5级程序员通常是在经过多年的工作经验积累和技术能力提升之后,达到的一个高级别的职称。他们具备了较为全面的技术能力和经验,能够独立完成较为复杂的项目任务,并且在团队中扮演着重要的角色。3. 除了技术能力和经验之外,5级程序员还需要具备较强的沟通能力、团队合作能力和领导能力,能够带领团队完成项目任务。同时,他们也需要不断学习和更新自己的技术知识,以适应不断变化的技术环境和市场需求。

五、程序员开发岗多少级?

程序员开发岗5级

现在市面上将开发人员分为: 初级、中级、高级、资深、专家(科学家)。那么我们在招聘和人事任用的时候如何划分一名程序员的级别,我来谈谈我自己的看法。

六、神级文案?

放风筝的时候,风筝和人都不自由

我待你和别人不同,但你始终不懂

请你用绝对清醒的理智,压制不该有的情绪

遇见是故事的开端,错过是宿命的遗憾

新鲜感褪去,正的爱才开始浮现

好听的话别当真,难听的话别走心

生于尘埃 溺于人海 死于理想高台

七、有哪些神级mv?

谢邀ฅ●ω●ฅ

①.先来介绍一个奇幻的:Coldplay《Up&Up (Radio Edit)》MV

  • MV使用了大量电脑借位合成,把各种大自然事物融合在一起,充满了神秘色彩,仅仅不到五分钟MV介绍了丰富多彩的现代生活、人类对宇宙的探索、科技的发展、环境的污染等等,其中也出现了多处地理名胜、惊叹的建筑等,总的来说,这是一个包含了对未来美好世界的畅享和对未来不可避免的问题担忧的MV。

━━━━●●━━━━━━━━━━━━

小女孩在金门大桥绘画
鼓手在星球上打鼓,星球很逼真吧!
可乐杯扔在清澈的河流中,这段应该是讲环境污染。(●—●)
落魄的小孩在鱼群中流浪
拥挤的人群遍布在轮船中。
其实个人最喜欢这,船上的蝴蝶毫无违和感。ԅ(¯ㅂ¯ԅ)
飞机飞行在行星中。

这只是一小部分,MV中还有许多不同的奇妙场景。

━━━━●●━━━━━━━━━━━━

②:Sia的《Chandelier》MV

  • 这首歌相信大家早有耳闻,是Sia的成名曲,歌曲基本延续了Rihanna的风格,毕竟曾经给日日作过曲,但与此不同的是,这首歌的MV很有深度,是一个叫做Maddie Ziegle的11岁的小女孩在跳着一支很诡异的舞,这支舞蹈内涵性丰富,舞蹈内含有多处隐喻的场景,比方突然抓狂,惊恐的表情,夸张的舞步,崩溃的情绪,小女孩用不用的类型舞蹈演绎了自己炽热愤怒的情绪,从芭蕾到踢踏舞,小女孩都诠释了从开始充满希望到最后情绪绝望的过程。
MV中的女孩是一个长期遭受家暴、性侵的未成年儿童,但小小年纪的她无法改变自己的状况,MV从不同的舞蹈表现了小女孩的面临绝望的内心感情。
这段是芭蕾,芭蕾象征着柔软和美丽,代表女孩内心还有一丝被拯救的希望。
三张图片都表现了女孩内心的挣扎和无助。
这是最后的场景,女孩正面谢幕,反映了此刻她内心已经放弃最后的挣扎,对社会的无情和人类的残酷充满了愤恨,但却束手无策只能接受的悲惨命运。

嘛,先推荐这两个我认为一定要看的MV,也算神级吧,毕竟真的有创意哒,以后有更好的会为大家继续更新的(๑> <๑)

八、字节程序员最高能达什么级?

初级程序员,中级成员,资深工程师,team领导层,部门领导层,公司领导层。

九、一级程序员必学的课程?

一级程序员必须学课程包括:计算机硬件根底、计算机网络根底、操作系统、计算机组成原理、计算机体系结构、数据库原理、软件工程、离散数学、算法设计与分析、数据结构、编译原理

      编程语言可以根据需要选择,底层开发人员必学:汇编语言、c、c++;web应用表示层开发人员:html、xml、javascript、jsp(或asp,php)等;普通应用程序开发:c++、vb、.net(其中包括多种语言,可根据现有根底选择)、java等。

十、程序员p级是什么意思?

这是企业的管理体系,一般技术层级用P,管理层级用M