程序员的十八般兵器库,捋一捋这近几年程序员们日常工作中常用的开源工具
快过年啦~大家放假了吗?很多人是不是已经在回家的路上了?
放假的这些天有什么安排吗?一年中除了国庆假,春节的假期是最长的了,可得好好利用起来呀~
相信关注我的很多人都是对编程感兴趣的,也想成为程序员。“工欲善其事必先利其器”,那么程序员的十八般兵器你需要了解一下~
看看你想要走的方向需要掌握哪些知识,在这个假期充分充实自己吧!
构思代码逻辑、算法设计、编程调试、 解决bug ...
想要成为一名合格的程序员需要保证有100%的专注力
本文我们不讨论哪种语言更好,而是集中捋一捋这近几年程序员们日常工作中常用的开源工具。当然这个清单肯定不全面,大家可以在评论区补充和完善。
也希望大家通过这篇文章大家可以找到适合自己的兵器以及了解如何使用。
交互设计师 常用兵器
- UI设计软件:Illustrator / Photoshop / AfterEffects / Sketch
- UE设计软件:Axure / XMind
前端工程师常用兵器
- 基础语言:HTML / CSS /Javascript
- 开发框架:React + React-router + Redux;Vue + Vue-router + vuex
- 数据可视化:Echarts; Three.js, D3, zrender
- 打包工具:Webpack / Gulp
- 服务端:Node.js, npm
JAVA工程师常用兵器
- 微服务开发框架:Spring boot + Spring Cloud
- 注册中心:Eureka,服务网关:Zuul,服务容错:Hystrix
- 配置中心:Appolo;流量控制:Sentinel
- 日志监控:ElasticSearch + Logstash + Kibana
- Metrics监控:Sprint boot Metrics + Grafana
- 消息队列:Kafka,缓存:Redis,客户端Jedis或Redisson
- 数据访问层:Mybatis + MySQL
- API定义与测试及文档生成工具:Swagger
爬虫工程师常用兵器
- 前端结构解析:HTML / CSS / Javascript / XPath / csspath / regexp
- 后端分析破解:HTTP; Cookie; Session
- 常见开发语言:Python / Javascript / Typescript / Java
- 爬虫框架:scrapy;Chrome + Puppeteer; PhantomJS + WebDriver; Node.js + Virtual DOM
- 数据存储:Redis, Kafka, MySQL, SSDB, ElasticSearch, Zookeeper
大数据工程师常用兵器
- 开发语言:JAVA / Python / Scala / Go
- 两大生态:Spark / Hadoop
- 数据汇集:数据同步 Sqoop / Flume / Canal / FlinkX / Databus; ETL工具:NIFI / Flume / Kettle / Logstash
- 数据存储:HDFS / ALLUXIO / HBase / ElasticSearch / MySQL / TiDB / MongoDB / FastDFS; Greenplum / ClickHouse; InfluxDB / TDEngine; Neo4j / Titan
- 数据分析:HIVE / Presto / Impala / Kylin;图挖掘:NetworkX / GraphX
- 离线计算:Spark & SparkSQL / MapReduce;任务调度 AirFlow
- 实时计算:Kafka + Spark Streaming / Storm / Flink
- 微服务:Dubbo / Netty / Spring系列 / Zookeeper
- 展现应用:HUE, Airpal, Superset, Jupyter
算法工程师常用兵器
- 机器学习:sklearn, CRF++, libsvm, XGBoost, LightGBM, LightLDA
- 深度学习:TensorFlow, MXnet, Pytorch, caffe/caffe2, Keras
- 自然语言处理:word2vec, ELMo, BERT, GenSim, fastText, StanfordNLP, jieba, LTP, AllenNLP
- 排序学习:RankLib
- 图像处理:opencv
测试工程师常用兵器
- 测试开发:JAVA/Shell/Python
- 性能测试:Jmeter, LoadRunner
- 自动化测试:RobotFramework, Selenium, Appnium, QTP
- 接口测试:PostMan
- 安全测试:NMap, AWS, Nessus, Metasploit
- 持续集成:Jenkins
运维工程师常用兵器
- 运维开发:Shell / Python / Java / PHP
- 监控工具
- 数据存储:ElasticSearch / MongoDB
- 数据获取:beats / Flume / Logstash
- 可视化:Kibana / Grafana
- 告警:Grafana
- 网络监控:SNMP + Logstash + ElasticSearch + Grafana, PRTG;
- Hadoop集群监控:Ambari + Dr. Elephant
- 服务器自动化:SaltStack, Cobbler, foreman, storcli+megacli, IPMI远程管理
- 虚拟化工具:VMWare Vsphere / KVM / libvirt
- 容器相关:Docker, 编排工具Rancher / Google Kubernates,镜像管理 Apache Harbor
- DNS :NSD + UNBOUND,PDNS+PDNS-RECURSOR;
- 安全工具
- Web安全测试: BurpSuite / Fiddler / SoupUI / Sqlmap / AWVS / OWASP ZAP;
- 渗透测试: Nmap / Hydra / hashcat / Ophcrack / OpenVAS / Nessus / Beef Framework / Metasploit / CobalStrike / Empire / PowerSploit / NiShang
- 代码审计:Fortify / findbugs;
- 安全防御体系: 主机入侵检测OSSEC / 网络入侵检测Suricate / 安全运维平台OSSIM / OpenSOC / 蜜罐Kippo / 日志审计ELK / Splunk;
- 应急响应与取证: Autopsy / Volatility;
- 源码库及版本管理:SVN / Gitlab; JAVA Lib私服:Nexus; NPM私服sinopia
看了上面这些琳琅满目的兵器库,会不会感觉脑仁疼...
从互联网在国内开始兴起那会儿,程序员才正式成为一门职业,至今也还不到三十年。程序员也是让人羡慕的职业,只需要敲敲键盘、用用脑子,就能拿到比其他职业高得多的薪资。
而个人计算机作为程序员日常工作的工具,也才出现四十年。短短几十年,这个职业对程序员的技能要求越来越高、越来越繁杂... 以至于你稍不留神就会跟不上时代。
如何应对技术的日新月异?我想, 快速的自主学习能力,应是程序员最重要的一项能力。
C/C++具有底层操作能力,既适合软件开发,同样也适合硬件开发。还可开发Windows操作系统,Linux操作系统,大型游戏,大型服务器,桌面应用程序等。
C语言是每个想要学习编程的小伙伴首要学习的语言~如果你也想要成为程序员,学习编程▼ 【点我直达学习交流群】