精华内容
下载资源
问答
  • 题主问题太大了 乍还真想不出来...然后框架,写东西要快嘛,防止重复制造轮子,laravel之类的搞起,然后免不了和数据库打交道,先说数据库管理的,需要用到的工具需要会吧(cli方式, phpmyadmin, pgadmin, n什么...

    题主问题太大了 乍还真想不出来需要什么「基础知识」;不过看标签写着PHP - -

    首先PHP的各种语法之类的,最最基本的;

    然后找一个顺手的编辑器,IDE吧,别迷信什么vim, emacs, 记事本的;

    然后框架,写东西要快嘛,防止重复制造轮子,laravel之类的搞起,

    然后免不了要和数据库打交道,先说数据库管理的,需要用到的工具需要会吧(cli方式, phpmyadmin, pgadmin, n什么什么cat的 ... );

    程序里面和数据库打交道的绝大部分都带ORM(框架中的),基本不怎么需要手写SQL了,当然写写是没坏处的;

    然后和前端交互方面,要么是输出HTML,要么是输出指定格式的数据(XML, JSON, ... )这些东西也要有吧?

    然后各种开源项目多看看吧,多看,多写,多思考。

    突然觉得没啥好写的,可能是我不太会表达,更或者是我太浅薄了- -

    其实会涉及到的东西特别特别多,慢慢儿来吧;先开始做,一边儿用一边儿学,文档不说滚瓜烂熟大致要滤一遍,大致能知道哪些是可以实现的,哪些是搞不定的,搞不定的怎么想办法搞定;google, stackoverflow == 多搜索;别买书,这世界变化快。

    乱七八糟打了一堆字,希望能帮LZ一点儿吧。 共勉。

    展开全文
  • 题主问题太大了 乍还真想不出来...然后框架,写东西要快嘛,防止重复制造轮子,laravel之类的搞起,然后免不了和数据库打交道,先说数据库管理的,需要用到的工具需要会吧(cli方式, phpmyadmin, pgadmin, n什么...

    题主问题太大了 乍还真想不出来需要什么「基础知识」;不过看标签写着PHP - -

    首先PHP的各种语法之类的,最最基本的;

    然后找一个顺手的编辑器,IDE吧,别迷信什么vim, emacs, 记事本的;

    然后框架,写东西要快嘛,防止重复制造轮子,laravel之类的搞起,

    然后免不了要和数据库打交道,先说数据库管理的,需要用到的工具需要会吧(cli方式, phpmyadmin, pgadmin, n什么什么cat的 ... );

    程序里面和数据库打交道的绝大部分都带ORM(框架中的),基本不怎么需要手写SQL了,当然写写是没坏处的;

    然后和前端交互方面,要么是输出HTML,要么是输出指定格式的数据(XML, JSON, ... )这些东西也要有吧?

    然后各种开源项目多看看吧,多看,多写,多思考。

    突然觉得没啥好写的,可能是我不太会表达,更或者是我太浅薄了- -

    其实会涉及到的东西特别特别多,慢慢儿来吧;先开始做,一边儿用一边儿学,文档不说滚瓜烂熟大致要滤一遍,大致能知道哪些是可以实现的,哪些是搞不定的,搞不定的怎么想办法搞定;google, stackoverflow == 多搜索;别买书,这世界变化快。

    乱七八糟打了一堆字,希望能帮LZ一点儿吧。 共勉。

    展开全文
  • 记得在大学时,班主任就曾给过我这样的建议说,你们女孩子可能更适合前端开发,起来没有后端那么难,女孩子在软件开发行业还是比较适合做前端。那么前端和后端有什么区别呢? 两者的概念 **前端:**通常我们这里...

    记得在大学时,班主任就曾给过我这样的建议说,你们女孩子可能更适合前端开发,学起来没有后端那么难,女孩子在软件开发行业还是比较适合做前端。那么前端和后端有什么区别呢?
    在这里插入图片描述

    两者的概念

    **前端:**通常我们这里所说的前端泛指Web前端,也就是在Web应用中用户可以看得见碰得着的东西。包括Web页面的结构、Web的外观视觉表现以及Web层面的交互实现。

    web前端分为网页设计师、网页美工、web前端开发工程师。首先网页设计师是对网页的架构、色彩以及网站的整体页面代码负责网页美工只针对UI这块的东西,比如网站是否做的漂亮,web前端开发工程师是负责交互设计的,需要和设计师与后端开发人员交流,共同完成产品的开发。

    **后端:**后端更多的是与数据库进行交互以处理相应的业务逻辑。需要考虑的是如何实现功能、数据的存取、平台的稳定性与性能等。说白了就是为前端的展示业务逻辑功能做处理。

    后端用户看不见的东西,通常是与前端工程师进行数据交互及网站数据的保存和读取,相对来说后端涉及到的逻辑代码比前端要多的多。

    常用的技术

    前端:

    1)精通HTML,能够书写语义合理,结构清晰,易维护的HTML结构。

    2)精通CSS,能够还原视觉设计,并兼容业界承认的主流浏览器。

    3)熟悉JavaScript,了解ECMAScript基础内容,掌握1~2种js框架,如JQuery

    4)对常见的浏览器兼容问题有清晰的理解,并有可靠的解决方案。

    5)对性能有一定的要求,了解yahoo的性能优化建议,并可以在项目中有效实施。

    后端:

    1)精通jsp,servlet,java bean,JMS,EJB,Jdbc,Flex开发,或者对相关的工具、类库以及框架非常熟悉,如Velocity,Spring,Hibernate,iBatis,OSGI等,对Web开发的模式有较深的理解

    2)练使用oracle、sqlserver、mysql等常用的数据库系统,对数据库有较强的设计能力

    3)熟悉maven项目配置管理工具,熟悉tomcat、jboss等应用服务器,同时对在高并发处理情况下的负载调优有相关经验者优先考虑

    4)精通面向对象分析和设计技术,包括设计模式、UML建模等

    5)熟悉网络编程,具有设计和开发对外API接口经验和能力,同时具备跨平台的API规范设计以及API高效调用设计能力

    工作的内容

    普遍来说,偏前端的前端会写界面样式多一些,偏后端的前端会写数据交互多一些。如果没有分这么细,那工作就是按图纸画界面,按UE设计动态效果,按业务逻辑展示数据和页面跳转以及反馈用户信息给后端。如果图纸和UE都没有,你可能会兼任。另外,不管是经理还是总经理,无论是美工还是后端,都"有资格"站在你面前指指点点(这里不论孰优孰劣,是真的前端涉及的东西比较多)。

    那么后端,你可以简单地说他是对数据库的增删改查,相应地,前端也就是写写画画。后端的工作相对来说耳根清净。不论是经理还是总经理,不管是前端还是DBA(数据库管理员),也无所谓OSer(操作系统管理员,自创词汇)基本都没有资格在你面前指指点点。如果这些你都会,你就是爷爷。如果这些你都不会,那你就是…所以后端的工作就是写代码,纯写代码。但若是公司没有以上职位,那你就得会数据库,会操作系统,会网络安全,啥都得会。

    前后端其实就像一座海上冰山,一半漏在外面,一半藏在水里,漏出来的是前端,人们看得见,实现起来也相对简单。藏在水里的人们看不见,也相对复杂,并且是前端的支柱。

    最后
    有帮助的话,各位朋友们可以点个赞收藏支持下啦!❤️
    也欢迎关煮乐字节哩哩,一个在变秃,但能带你变强的程序员~
    今天先说这么多,我是乐字节哩哩,一个有趣的灵魂!下期见!
    展开全文
  • 作为一个非科班自学计算机成功转行软件开发的人,体会过...成为一个符合 BAT、TMD 大厂要求的后端技术工程师,到底需要学哪些技术?后端技术学习路线是怎样的? 学习路线 话不多说,直接上刚画完的后端技术学...

    作为一个非科班自学计算机成功转行软件开发的人,体会过当初想学又不知从何学起的迷茫,还好最后摸索出了一条正确学习的路线。

    思来想去,学习方向和路线很重要,比起具体的技术细节, 可复制的经验、清晰的学习路线,是大部分人更加需要的东西 。

    朝着正确的方向努力否则只会离目标越来越远,不是吗?

    所以一张完整的后端技术学习路线思维导图,分享给你~~~

    要成为一个符合 BAT、TMD 大厂要求的后端技术工程师,到底需要学哪些技术?后端技术学习路线是怎样的?

     

    学习路线

    话不多说,直接上刚画完的 后端技术学习路线 思维导图框架:

    接下来我们来逐个展开介绍!!!(喜欢点个关注吧)

     

    一、计算机基础

    不管是后端开发还是前端开发,说到底我们所有的软件开发都是在计算上编写程序。

    虽然对于大部分人来说,真正开始写代码的时候很少会让你去解决计算机底层的问题,不接触不代表不重要,计算机基础是最重要的。

    后端开发工作中经常用到 Java、C++、Python、Golang 这些语言称为高级编程语言,称为高级是它们接近我们日常交流的自然语言,离计算机底层远。

    但所有的高级语言最终都会转化成汇编->计算机指令->控制流操控计算机硬件 ,所以学习计算机构成和工作原理、操作系统这些基础知识,能够加深我们队高级语言的理解。

    那我们一直说的计算机基础到底是什么?

    计算机科学技术 CS(Computer Science)作为一门专业课程,就和其他工科课程一样有自己的理论体系。

    如果你是计算机专业的同学不用我来教该学什么,计算机专业大学四年学校教的那些就是基础,别小看你在学校学的那些看起来没啥用的课程。 

    我这有一份科大的计算机技术本科主要课程结构安排 :

    一流大学的计算机专业要学什么可以对照着看下,从学科数学理论基础、计算机体系结构、软件工程方法等等维度展开。

    那如果你不是计算机相关专业的想转行,也不要被吓到了,毕竟这是人家四年时间的学习内容。

    本科的培养目标不仅仅是培养出一个软件工程师,本科学习还是面向硕士博士的基础培养。

    如果只是面向后台开发和工作面试,或者你是非计算机专业想转行,社畜没有太多时间去学习大学那些理论课程;

    那帮我把计算机基础的范围缩小到上图所示这几门专业课: 计算机组成原理、计算机网路、操作系统、数据结构等。

    1、计算机组成原理

    这门课程让你了解计算机的组成和工作原理,要学习的内容包括:

        ♢ 数据在计算机中的表示和运算(计算机不识数,只认得高低电平,所以数据在计算机内部都用二进制的0和1表示)

        ♢ 存储系统(数据和程序指令都要存储下来,学习计算机的存储层次,内存、外存、高速缓存、虚拟存储技术)

        ♢ 指令系统(写的代码最终都要被翻译成计算机指令,指令格式和寻址方式有多种,控制器来控制指令执行)

        ♢ 中央处理器(也就是 CPU 计算机的大脑,主要构成是运算器和控制器)

        ♢ 总线(计算机的血管动脉,连接计算机各功能组件,用来传输数据、地址信号、控制信号)

        ♢ 输入输出系统(Input/Output 也叫 IO 系统,连接和管理各种外部设备比如键盘、显示器等等)

     

    2、计算机网络

    世界上第一台通用计算机「ENIAC」于 1946 被发明出来,如其名字一样仅仅是用于计算,在后来计算机越来越多...

    如果没有网络每台计算机都将成为一个孤岛,也不会有现在互联网的繁荣。

    「计算机网络」这门课程的学习路线非常清晰,就是围绕着如何让地理位置上不同的计算机连接起来,并高效可靠的交换数据信息,实现人在家中做,天下事尽知。

    计算机网络有分层次,根据各层属性和特点,分为:

        ♢ 物理层

        ♢ 数据链路层

        ♢ 网络层

        ♢ 传输层

        ♢ 应用层

    这个层次划分从上到下就是一个网络数据包的接收路径,反之就是发送路径。

    既然要交换信息肯定得商量一套通用的协议,就像我们和老外交流,要么他们学中文要么我们学英文。

    反正得统一出一个标准语言出来,这在计算机网络中称之为「通信协议」。

    如上述的网络分层,每层都有各自适配的协议,所以计算机网络的学习基本就是围绕着分层协议的学习。

     

    3、操作系统

    操作系统也是一种软件。你熟悉的微软Windos操作系统,后台开发熟悉的各种发行版的 Linux 系统,都是通过软件的形式安装在计算机上。

    只不过这个软件和我们平常接触的应用程序软件不同,它比较特殊...

    因为它向下和计算机硬件(就是我们在计算机组成原理中学习的那些硬件)打交道,向上给其他应用程序和用户提供通用的交互的接口,说白了操作系统就是个中介和管家的角色。

    它帮我们做了下面这些事情:

        ♢ 进程管理(你写的程序运行起来才能干活,运行起来的程序称为进程,进程是资源的最小单位)

        ♢ 内存管理(计算机内存又贵又少,动不动又要来个高并发,内存管理大有学问)

        ♢ 文件管理(计算机中的资料和信息需要通过文件系统来保存、管理)

        ♢ 输入输出管理(各种外部设备如何接入计算机和接入之后又如何管理)

     

    4、数据结构

    数据结构大家最熟悉,即使毫无计算机基础或是想转行计算机,第一个遇到的就是数据结构。

    因为面试刷的算法题本质上就是对各种数据结构的运用,所以单纯对面试功利的角度来说,数据结构也是必须要掌握的计算机基础。

    数据结构要学到:

        ♢ 线性表(链表、数组、循环链表)

        ♢ 栈和队列

        ♢ 树和各种二叉树(二叉排序树、平衡二叉树、哈夫曼树、B树、B+树、Trie树)

        ♢ 图(图的存储结构、BFS、DFS、最短路径、最小生成树、拓扑排序、关键路径)

        ♢ 查找算法(二分查找、B树查找、HASH表、KMP字符串模式匹配)

        ♢ 排序算法(插入排序、冒泡排序、归并排序、基数排序、堆排序)

        ♢ 贪心算法

        ♢ 位运算

        ♢ 分治算法

        ♢ 动态规划

    好了,计算机基础四大专业课已经大概过了一遍,当然这是我给没有计算机基础同学的实用主义建议,等你学完这四门课程也只能够说入门计算机了,不过这已经比很多人厉害了。如果想真正的了解计算机这门学科,可以等学完了这 4 门基础课程之后,再花写时间挑一些上面培养方案中的课程去学习,做一个知识体系完备的计算机软件后端开发工程师。

     

    二、Linux

    在后台开发领域,你所能接触到的后端服务不敢说 100%,至少也有 90% 以上是运行在 Linux 系统之上。

    因为它开源、便利、功能强大,需要学习以下技术点:

    1、Linux系统使用

    所以如果你想走后端开发这条路线,我建议你趁早使用 Linux ,越早越好。

    可以是在个人 PC 上装 Linux 虚拟机,或者装个双系统。

    有了Linux系统之后干嘛呢?把它作为你的常用系统,经常登录进去对照着「鸟哥的 Linux 私房菜」从头到尾操作一遍,ok,Linux的基础操作你就掌握了。

     

    2、Linux 高级编程

    Linux「高级编程」的意思是比上面的 Linux 基础操作更深入一个层次。

    学会了 Linux 的使用还不算是一个真正的开发人员,使用系统是成为开发者最基本要求。

    会操作Linux 就像使用 Windows 系统一样,只不过是学习成本的问题,如果这个世界没有 Window 系统,你女朋友花点时间也能掌握 Linux 系统基本操作。

    要想进阶成为后端开发人员,就要懂得如何使用 Linux 系统提供的各种系统API(系统调用接口)进行编程开发,程序员用你写的代码来控制系统,普通用户只会用鼠标操纵。

    这个阶段需要学习:

        ♢ Unix 系统实现 Linux、基本系统数据类型

        ♢ 文件操作函数: open 、 read close write dup fcntl ioctl stat chmod access chdir...

        ♢ 系统编程接口的基本特性和高级特性

        ♢ Linux进程环境、如何创建进程、线程,程序的存储空间分配、环境变量

        ♢ 进程组、会话以及任务控制、进程优先级和调度

        ♢ 动态库和静态库

        ♢ 进程间通信:管道和FIFO、消息队列、信号量、共享内存、内存映射

        ♢ 套接字和网络编程

    总之,这一阶段需要学习的是在 Linux 环境下的高级编程技巧,通过对这些内容的学习也能让你更深入的理解 Linux 系统是如何工作和运行的,并且真正的踏入 Linux 系统编程大门。

     

    3、网络编程

    网络编程是通过网络套接字 socket 方式实现的通信,所以也属于进程间通信 IPC(Inter-Process Communication)。

    由于现在的后台服务基于服务端/客户端模型,两者之间基于网络通信,你在家用手机点个外卖的服务请求,也是通过网络通信发给某团的后台服务器。

    所以后台服务开发,说到底还是网络编程,以及建立在网络编程数据之上的应用层开发。

    网络编程学什么:

        ♢ 什么是socket套接字

        ♢ 套接字选项

        ♢ TCP/UDP 套接字编程

        ♢ Unix domain 协议和编程

        ♢ 原始套接字编程

        ♢ IO多路复用:select 、poll、epoll、kqueue

        ♢ 序列化技术

        ♢ 零拷贝技术

        ♢ 开源网络库:muduo、libevent

    学完以上内容你大概可以写一个类似QQ一样的网络聊天小工具。

    不在在工作中,都有成熟的网络框架或网络通信库,大公司比如鹅厂大部分是自研网络通信框架,小公司用开源项目。

    这让很多后台开发人员不必关心底层的网络通信细节,除了部分基础架构的开发同学,大部分后台开发同学工作都是在做业务系统的开发。

    但了解底层网络编程原理,是后台开发人员的核心能力,这点对于 C/C++ 后台开发程序员尤为重要。它能拔高你看问题的高度,不了解底层原理,就像是在黑盒编程一样,出了问题无从下手排查。


    然后,学完了以上内容,基本是具备了从事后台开发的基础能力,也能开发出一个简单的后台服务器了。

    今天的学习就止步于此吧,明天的你依旧要努力学习呀,后面跟大家来分享数据库、高并发、设计模式、分布式等等....

    最后,不管你是转行也好,初学也罢,进阶也可,如果你想学编程~

    值得关注】我的 C/C++编程学习交流俱乐部!【点击进入】

    问题答疑,学习交流,技术探讨,还有超多编程资源大全,零基础的视频也超棒~

    展开全文
  • ic后端如何自学?

    2021-02-23 18:37:04
    对于数字后端设计来说,涉及到知识点较多,学习的东西也较多,在每个阶段需要面对不同的问题,需要从全局去考虑,floorplan需要如何考量,后续的place,CTs,ROUTE又需要注意哪些。 同时设计中遇到的一些问题如何去...
  • 一个人做网站的话,最好是可以一些前端的东西,HTML、CSS和JavaScript、jquery、angular、VUE等,后端的话,php和mysql,这样基本都是够用的了! 但是这些都下来的话,需要很多时间的,等到你会了,别人的网站...
  • 前言 今年是转折的一年,很多android开发的小伙伴失业了,虽找到了一份工作,但高不成低不就,下半年金九银十有想法更换一份工作,很多...我觉得嵌入式开发比互联网软开(比如Java后端)还是难一些的,比如我们搞
  • 前言 今年是转折的一年,很多android开发的小伙伴失业了,虽找到了一份工作,但高不成低不就,下半年金九银十有想法更换一份工作,很多...我觉得嵌入式开发比互联网软开(比如Java后端)还是难一些的,比如我们搞
  • 全栈只是个概念 也分很多种类 真正的全栈工程师涵盖了web开发 DBA 爬虫 测试 运维,要学的内容那是相当的巨量。就web开发方向而言需要学习的内容:前端知识 包括HTML5 CSS3 JS Jquery Ajax,后端至少需要能够熟练...
  • C++能干什么?往细了说,后端、客户端、游戏引擎开发以及人工智能领域都需要它。往大了说,构成一个工程师核心能力的东西,都在C++里。跟面向对象型的语言相比,C++是一门非常考验技术想...
  • 深圳php培训多钱,深圳PHP培训有多好,通过PHP学习难度,PHP属于前端还是后端,php常用的编辑工具有哪些带我们了解一下。PHP学习难度学习难度主要...甚至会到一些没用的东西学习的事情都没有那么简单,只...
  • Python爬虫工程师学习养成记

    千次阅读 多人点赞 2020-06-29 16:19:50
    正因为涵盖的方向多,因此学习的东西也非常零散和杂乱,很多初学者搞不清楚究竟学习哪些知识,学习过程中遇到反爬也不知道用什么方法来解决,本篇我们来做一些归纳和总结。 初学爬虫 一些最基本的网站,往往不带...
  • 正因为涵盖的方向多,因此学习的东西也非常零散和杂乱,很多初学者搞不清楚究竟学习哪些知识,学习过程中遇到反爬也不知道用什么方法来解决,本篇我们来做一些归纳和总结。 初学爬虫 Ajax、动态渲染 多进程、多
  • 当今大数据的时代,网络爬虫已经成为了获取数据的一个重要手段。但学习好爬虫并没有那么简单。...正因为涵盖的方向多,因此学习的东西也非常零散和杂乱,很多初学者搞不清楚究竟学习哪些知识,学习...
  • 正因为涵盖的方向多,因此学习的东西也非常零散和杂乱,很多初学者搞不清楚究竟学习哪些知识,学习过程中遇到反爬也不知道用什么方法来解决,本篇我们来做一些归纳和总结。 初学爬虫 一些最基本的网站,往往不
  • 前段学习初始化

    2014-04-26 16:39:04
     需要哪些书籍,买书吗  需要什么工具  有视频吗  我现在基础能学习前段吗  学习前段能干啥  他是个名字,他怎么解释,他包含哪些东 。。。。。。 哈哈哈,带着各种的疑问,也许这是你完全陌生...
  • 一、 初识ExtJS 这是个前端框架,但是作为后端人员。完成从前到后的完整开发,也需要...那么了解就需要知道生成的文件中都有哪些东西以及都有什么作用。 生成的文件目录如下: 1. .sencha/ # 特定文件...
  • 我觉得嵌入式开发比互联网软开(比如Java后端)还是难一些的,比如我们搞Java开发的,再怎么说,基本也都是用户态的东西,但嵌入式很多东西都深入到了内核态,所以难度肯定是有的,表现在几个方面吧: 首先,...
  • 虽然 2020 开局不顺,但生活工作还是往前看的。目前在互联网行业内,尤其是大厂之间对人才的抢夺愈演愈烈。如何在后疫情时代,快速提升自身实力,尽快达到心仪企业的用人要求,成为当下技术人找工作或跳槽时必须...
  • 小白怎么入门网络安全?看这篇就够啦!

    千次阅读 多人点赞 2020-09-04 14:09:56
    要学哪些东西?有哪些方向?怎么选? 不同于Java、C/C++等后端开发岗位有非常明晰的学习路线,网路安全更多是靠自己摸索,要学的东西又杂又多,难成体系。 常读我文章的朋友知道,我的文章基本以故事为载体的...
  •   不知不觉来公司实习已经半年...刚开始公司给我安排了一个前端的师傅带我,我也是一脸懵逼地看着师傅问他前端要学哪些东西。。。师傅让我先去看angular的官方文档,结合着目前正开发的项目代码,有不懂的就问他。...
  • 爬虫工程师

    2020-09-30 09:50:31
    正因为涵盖的方向多,因此学习的东西也非常零散和杂乱,很多初学者搞不清楚究竟学习哪些知识,学习过程中遇到反爬也不知道用什么方法来解决,本篇我们来做一些归纳和总结。 初学爬虫 一些最基本的网站,往往不
  • 实战开发和看教程学习其实还是有很大差别的我为什么建议学习还是得从...工作中真正用到哪些东西,它们之间是如何构成一个项目的。对于刚开始编程的估计不是很清楚。所以我建议还是从项目出发,哪怕去GitHub上找个项
  • 初识Java——课堂笔记

    2020-04-14 19:10:04
    学习Java的三个阶段 第一阶段: A:走出校园,迈进社会,走进企业成为了一名程序员 ...A:前端知识(作为一个后端工程师,懂得前端。但是前端可以不懂后端) 1、Html(表单的各种请求)、CSS(绝...
  • 计算网络的协议非常非常多,很多同学完都一头雾水,或者仅仅懂一点 HTTP,但是真正掌握的东西可不少: OSI 七层模型、TCP/IP五层模型 常见网络协议:HTTP、TCP/IP、UDP 网络安全:非对称加密、数字签名、数字...

空空如也

空空如也

1 2 3 4 5 ... 8
收藏数 144
精华内容 57
关键字:

后端要学哪些东西