您的位置:首页 > 运维架构 > Linux

如何成为Linux 全栈工程师

2016-10-27 16:20 253 查看
转载至传智播客C++学院-虚竹 

成为全栈式系统程序员

学习态度

* 谦虚 * 严谨
* 勤思 * 善问

学习方法

只听不练肯定学不会Linux,每个知识点都需要去动手实践才能快速掌握python编程

第 1 章

什么是全栈工程师

全栈工程师,也叫全端工程师,英文Full Stack developer。是指掌握多种技能,并能

利用多种技能独立完成产品的人。

第 2 章

全栈工程师能干什么

2.1 全局性思维

现代项目的开发,需要掌握多种技术。互联网项目,需要用到:

* 产品设计 – ai
– CorelDRAW

* 界面设计 – ui
– photoshop

* 前端开发移动优先 – IOS App (Objective-C/C++)
– Android App (Java/C++) – Hybrid App (混合模式移动应用)
– 移动web (Html5/JavaScript)

* web前端语言 – html5
– JavaScript – Css3

* 操作系统 – Linux
– Unix

* Web服务器 – Nginx
– Apache

* 缓存服务器 – Memcached
– Redis

* 后端业务服务器 – python
– c/c++ – php
– java – node.js
– Erlang

* 数据库 – MySQL
– Mongo DB

* 文件系统 – FastDFS(淘宝)
– GFS(Google File System)

* 微信公众号 – 微信交互
– 微信支付

* restFul API设计

所以说一个现代化的项目,是一个非常复杂的构成,我们需要一个人来掌控全局,他不需要

是各种技术的资深专家,但他需要熟悉到各种技术。对于一个团队特别是互联网企业来说,

有一个全局性思维的人非常非常重要。

2.2 沟通成本

项目越大,沟通成本越高,做过项目管理的都知道,项目中的人力是1+1<2的,人越多

效率越低。因为沟通是需要成本的,不同技术的人各说各话,前端和后端是一定会掐架的。

而全栈工程师的成本几乎为零,因为各种技术都懂,胸有成竹,自己就全做了。即使是

在团队协作中,与不同技术人员的沟通也会容易得多,让一个后端和一个前端去沟通,那完

全是鸡同鸭讲,更不用说设计师与后端了。但如果有一个人懂产品懂设计懂前端懂后端,那

沟通的结果显然不一样,因为他们讲的,彼此都能听得懂。

2.3 创业公司

对于创业公司来说,全栈工程师的价值是非常大的,创业公司不可能像大公司一样,各

方面的人才都有。所以需要一个多面手,各种活都能一肩挑,独挡多面的万金油。对于创业

公司,不可能说DBA,前端,后端,客户端各种人才全都备齐了,很多工作请人又不饱和,不请

人又没法做,外包又不放心质量,所以全栈工程师是省钱的一妙招。

虽然说全栈工程师工资会比一般的工程师会高很多,但综合下来,成本会低很多。

第 3 章

如何成为全栈工程师

3.1 语言基本功

3.1.1 C

* 现代的所有语言都借鉴了C语言或LISP语言

* 培养了程序员严谨的编程逻辑

* 本质,让你知其然并知其所已然

3.1.2 C++

* 培养了面向对象编程的思维

* 最强大最复杂的编程语言,会当凌绝顶,一览众山小

* 高性能,高稳定性

3.1.3 Python

* 解决一个问题,C实现100行,Java实现50行,Python实现20行

* 万能胶水,什么都能干,什么都能粘合进来

* 语法简洁,易学

* 有C和C++背景的程序员轻松驾驭Python

3.1.4 JavaScript

* Html中的默认的编程语言

* Hybrid混合编程的派头兵

* JQuery

* AngularJS

* Ionic

3.1.5 SQL

* MySQL

* Mongo DB

3.1.6 Html5

* 各种标签

* Phonegap

* Cordova

3.1.7 Css3

* BootStrap

* MUI

3.2 算法基本功

3.2.1 数据结构

* 把具体问题抽象化成结构体或类

3.2.2 排序算法

* 冒泡排序

* 插入排序

* 归并排序

* 快速排序

* 哈希排序

3.2.3 链表

* 增删改查

* 逆序

* 树转链表

* 链表转树

3.2.4 二叉树

* 搜索二叉树

* 平衡二叉树-红黑树

3.2.5 图

* 深度优先搜索

* 广度优先搜索

* 海量数据挖掘

3.3 操作系统Linux基本功

* 基本命令操作

* 开发环境Vim/gcc/gdb/Makefile

* 文件IO

* 文件系统

* 进程

* 进程间通信

* 信号

* 线程

* 线程间同步

* 网络协议

* socket编程

* 高并发服务器

* 开源服务器框架

* 服务器阿里云部署实施

3.4 数据库基本功

* SQL基本语句

* 表的设计与优化

* 数据库的备份部署和实施

* 数据库缓存优化

3.5 Hacker精神和能力

* 热爱编程,不单纯是为了搞门技术混口饭吃

* 快速学习能力

* 高强度抗压能力

* Google解决问题能力

* 健康的体魄

第 4 章

全栈式开发一个项目

4.1 python能干什么?

* 图形化开发

* 系统脚本

* web服务器

* 网络爬虫

* 服务器集群自动化运维
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: