我从2015年开始编程,已经有7年经验。入行时用Java语言开发了2年安卓客户端,然后转岗用PHP做服务端开发,最近2年用Go做Web应用开发和微服务开发。
最近准备连载一个系列文章,就聊聊很多即将参加校招(实习/秋招)同学的一些误解和疑问。最近这段时间本校的几个师弟约我面基请教我一些问题,笼统的讲就是该怎么复习?该不该实习?什么时候去实习合适?没有实习面试时会不会减分?选择 Java 还是 C++ 呢?诸如此类的问题吧。经过几个身边师弟的面基后,发现很多问题都是相似的,而且很多准备参加校招的学生对一些点是有误解的,因此我通过个人 2020 届秋招的经验为大家进行一些问题的答疑。我会按照我最高频的问题进行文章连载顺序。
本文主要是介绍作者所在团队最近的一些变化和思考,包括前言、NodeJS职能变化、ReactNative的大规模应用、专门的架构组职能、总结五部分。
互联网发展初期,大多数系统都是C/S架构,C代表客户端,S代表服务器,常见的软件,比如QQ(WEB版的不算),都是采用这种架构模式。这种架构模式通过将任务合理分配到Client端和Server端,降低了系统的通讯开销,可以充分利用两端硬件环境的优势。B/S架构(浏览器/服务器)是随着Internet技术的兴起而出现的,它是C/S架构的改进。在这种架构下,用户界面完全通过浏览器实现,一部分事务逻辑在前端实现,但是主要事务逻辑在服务器端实现,形成所谓3-tier(三层架构)架构。B/S架构利用不断成熟和普及的浏览器技术,实现原来需要复杂专用软件才能实现的强大功能,并节约了开发成本,是一种全新的软件系统构造技术。
服务端开发对于任何互联网公司来讲,都并非易事,它所涉及的技术知识面非常广泛,如果开发人员的经验不足,将直接影响产品用户的体验。作为七牛云存储创始人,许式伟有着超过15年的编程经验,对于服务端开发那些事甚是了解。因此,在本文中,他将对服务端开发所涉及的各方面原理知识进行详细阐述,内容涵盖网络协议、操作系统原理、存储系统原理、模块设计、服务器设计等多方面。
过去十年是移动互联网蓬勃发展的黄金期,相信每个人也都享受到了移动互联网红利,在此期间,移动互联网经历了曙光期、成长期、成熟期、现在来说已经进入饱和期。依然记得在 2010-2013 年期间,从事移动开发工作不知有多火,有工作 1-2 年经验的开发者薪资基本是上万,对招的人专业素质要求也不高,入门即可。从 2016 年底至今来看,局面而是另外一番景象,移动开发市场过度饱和,市场上充斥着太多初级开发者,网上一直流传着移动互联网的寒冬,很多开发者找工作都没以前好找,一些岗位常常面临着百里挑一景象,没有个三五年经验,现在 HR 都是刷刷的翻过。
软件开发经历几十年的发展到今天,开发者的关注点其实只有两个:系统架构和软件架构。下图中列出的内容有的属于系统架构层面,比如异地容灾、网络专线、网络防护等等;有些属于软件架构层面,比如数据库、高并发、文件存储等等。
思考几分钟,如果你可以有理有据地说出答案,那确实就不用再往下看了,关上手机去陪陪家人是个不错的选择。
可能在未来的某一天,Google 的工程师会使用通过 Compose 开发的 IDE 来开发 Compose 。
对编程新人的告诫:你需要一定的专注。 技术面摊很大应该是一些编程新手的通病,起码我几年前是这样。 会用到不同的开发语言,C#,JAVA,PHP,Python,但是仅仅局限于用,对于笔筒语言的并发框架与
我见过很多之前都不是计算机专业出身的,现在从事Java开发或者大数据等职业,而且现在做的都还不错。我想这些人应该都是经过深思熟虑的做出选择的,或者是人云亦云,不过都已经走出来了。我是从事JAVA这块十多年,从初级开发到现在架构师,确实一路经历很多。
作为服务端开发工程师,Linux基础是常见的考察点,本章主要为大家整理Linux的常用命令以及系统定时任务及Shell基础内容。
阅读原文 闲来无事,今天随便聊聊前端工程师应该具备哪些素质,权当博大家一笑。 前端工程师到底是工作很简单的“切图仔”,还是包揽客户端和中间层的“大前端”?招聘市场上有大量的公司对前端工程师求贤若渴;但同时求职市场上却有大量的前端工程师在“求职若渴”。造成这种两难局面的原因是用人单位与求职者对前端工程师的技能需求以及定位存在差异。 应该怎么定位前端工程师这个岗位?我们可以从前端的发展历史中得到答案。 1.1.1 前端工程师的发展史 1990年,Tim Berners Lee发明了世界上第一个网页浏览器Worl
最近在论坛看到一些有关项目复盘的分享,有不少的收获,所以决定也把以往的项目总结分享出来,希望对同行能有所帮助,也期待能看到更多的分享。
这周事情特别多,不好意思把公众号给怠慢了。今天接上篇《CreatorPrimer|微信小游戏与腾讯云初体验(1)》,看如何利用腾讯云服务接近零成本的开发微信小游戏后端。
本文关键字:the headless cms,b/s web to c/s web, headless webapp backend.
以前看见过,没发,现在又看见了,向大家推荐一下: 概述 与httpwath相比,fiddler能模拟http请求、能断点调试、http分析统计吸引了我,使用之后感觉这个工具非常不错,这篇文章只单介绍一下fiddler工作原理,简单介绍一下它的重要功能,以及如何使用使用fiddler模拟http请求,满足移动服务端开发人员调试的问题。对于其他的功能大家可以自己研究一下。 fiddler工作原理: 当你启动了Fiddler,程序将会把自己作为一个微软互联网服务的系统代理。作为系统代理,所有的来自
王伟嘉,腾讯前端高级工程师,Node.js Core Collaborator,目前在腾讯云CloudBase团队负责小程序·云开发、Web应用托管Webify等云产品的核心设计和研发,对前端架构、全栈开发、Serverless有较丰富经验。
本文旨在给前端同学在进行nodejs服务端项目的架构设计时提供一些基本思路及常见场景的解决方案。开发node服务本质上属于服务端开发的范畴,但由于今时今日nodejs开发各种应用的普及、前端工具链向服务端的延伸等,对前端同学全栈开发能力的要求也日渐提高,故写下此文。由于服务端开发本身是一个非常庞大的话题,本文会结合一些浅显易懂的实例来进行快速覆盖。同时在文章最后,我会以我在公司最近对前端统一打包服务的分布式改造及多节点部署为例子,来结合一些实践进行描述
需要快速实现一个贪吃蛇的 demo 以验证功能,非传统贪吃蛇玩法,是类似贪吃蛇大作战的多人联机玩法
- 按应用软件可分为:Apache服务器、Nginx 服务器、IIS服务器、Tomcat服务器、 weblogic服务器、WebSphere服务器、boss服务器、 Node服务器等
在突如其来的疫情影响下,2020 年在线教育的流量达到新一轮高峰。面对百万 PCU 的高并发场景,为保证业务系统的稳定性,腾讯在线教育团队果断拥抱了 Serveless 并进行架构升级改造。在这一过程中,他们如何解决业务高速发展所面临的人力紧缺的问题?上云是不是大势所趋?如果同样拥抱 Severless,需要注意什么?
相信很多招聘要求上都会写明需要3-5年经验才可以达到架构师要求,并且针对其中一些必要的技术储备大家已经能够耳熟能详,那究竟为什么需要这么久时间,以及具体每项技能需要掌握到什么程度才可以担当这个角色呢?
不论是从自身还是Web整体的角度,前端从未停止扩宽技术边界的尝试。现在的前端不仅可以做网页,还可以做小程序、APP、桌面程序,甚至是服务端。Node.js打破前后端编程语言隔阂,赋予前端跨界的可行性。 然而语言只是服务端开发最表层也是最易突破的一层,可靠性、速度性能、安全性、架构可扩展性、甚至运维,都是前端向全栈发展需要考虑的关键因素。Serverless理念以此为核心出发点,将服务器的管理工作从开发者的关注列表中剥离,可令开发者将主要精力投入到业务逻辑中,为全栈开发提供了更多的可能性。 10月20日,
其以 HTTP 协议为基础,通过 XML 进行客户端和服务器端通信的框架 / 组件。
对服务端工程师来说,如果你的工作中涉及 Nginx、高性能、高并发、动态控制、性能测试、分析等,那么,不论你使用什么开发语言和平台,OpenResty 都是不可多得的高性能开发利器。
小项目都是放一个服务器上的。一个服务器上部署多个项目,一个应用占用资源太少了就多部署几个项目。
12月15日,由腾讯云主办的首届“腾讯云+社区开发者大会”在北京举行。本届大会以“新趋势•新技术•新应用”为主题,汇聚了超40位技术专家,共同探索人工智能、大数据、物联网、小程序、运维开发等热门技术的最新发展成果,吸引超过1000名开发者的参与。以下是小程序分会场的演讲内容,稍作整理,分享给大家。
9月10号,IMWeb团队在腾讯大厦成功举办了IMWebConf 2016!进行了一次十分精彩的分享沙龙!(大会沉淀,PPT、视频等干货请猛戳阅读原文!) 一、一句话总结 【影响力范围】 听众来自腾讯、爱奇艺、OPPO、大疆、迅雷、京东、金蝶软件等超过70家国内互联网公司,不少听众来自武汉、上海、珠海等地。 超过200名同学参加了本次IMWebConf。 而本次IMWebConf在腾讯课堂开设的线上直播课程中,报名人数达到1181人。 【活动效果】 会后反馈中97.8%的同学表示自己学到了东西。 会后反馈中
本篇文章针对的是,长年写客户端(WPF/winfrom/delphi)的小伙伴想转后台写数据服务(asp.net mvc webapi , socket)或者想转其它技术,却又不知道改如何下手处于比较迷茫状态下的小伙一些引导。
我们早就知道,如今的JavaScript已经不再是当初那个在浏览器网页中写写简单的表单验证、没事弹个alert框吓吓人的龙套角色了。借助基于v8引擎的Node.js Runtime以及其他一些JavaScript Runtime的平台能力,JavaScript已经成长为在桌面端、移动端、服务端、嵌入端全面开花的妖艳明星。
陈映平 云汉金融科技前端负责人,前IMWEB团队成员,专注前端技术与架构设计 写在前面 在web服务端开发中,字符的编解码几乎每天都要打交道。编解码一旦处理不当,就会出现令人头疼的乱码问题。 不少从事node服务端开发的同学,由于对字符编码码相关知识了解不足,遇到问题时,经常会一筹莫展,花大量的时间在排查、解决问题。 文本先对字符编解码的基础知识进行简单介绍,然后举例说明如何在node中进行编解码,最后是服务端的代码案例。本文相关代码示例可在这里找到。 关于字符编解码 在网络通信的过程中,传输的都是二进制的
在github上看到一种图的表现形式很不错(https://github.com/kamranahmedse/developer-roadmap),迫不及待的自己做了一张:服务端开发学习路径图,表现力还是很强的。我们从选择一门开发语言说起,经历了摸索阶段、集群阶段和进阶阶段,希望你最后都能以架构师的思路去思考。
今年的主要目标之一就是从嵌入式底层开发到后端开发的转变,尽快熟悉后端的开发环境,开发环境。其中主要熟悉的有:
Java工程师往往容易忽视的一块知识点,其实就是Java网络编程,为什么呢,因为如果我想写一个Java Web项目,我只要用SSM就可以轻松搞定,写好我们的controller、service和dao就可以了,也就是只需要关心业务逻辑,不需要关心前端请求的路由、甚至是后端的负载均衡和网络请求处理,因为这些东西很多时候都被Nginx和Tomcat给吃掉了,Nginx帮我们做好了负载均衡,Tomcat则帮我们完成TCP连接的建立,HTTP请求的处理,把所有复杂的技术细节都给屏蔽了。
在JavaScript语言努力摆脱“玩具语言”这个标签的进化历程中,Node.js绝对能记下浓墨重彩的一笔。Node.js并不是一个用于实现具体功能的第三方工具库,而是JavaScript程序的运行环境。
看到这个问题,我还是有资格回答的,我也经历过和他一样的疑惑,想着可能不少人工作几年后都想过更换技术方向的问题,就干脆写篇文章来分享下我的看法。
本文关键字:利用nginx和jupyter打造开发发布运营教育一体的多语言paas,内容创作工具CCT,多人协作平台UGC,demo as engine,post as app,云语言系统,云开发社区
我计划做一款App产品,包括Android和iOS,做完打算将Android和iOS客户端的代码开源,并将上架到应用宝和AppStore,之后还会不断迭代。而在做这款产品的过程中,我会尽量将一些相关的思考、决策、心得总结等整理成文分享出来。这个周期将会比较长,因此,文章我将以连载的方式发布。
Newbe.Claptrap 0.10.2 发布,我们为项目模板引入了 Minion 以及 Blazor 制作的交互界面。
说起软件开发,现在是无人不知,无人不晓。好多人可能以为软件开发就是做一样工作的,其实不然,软件开发也分很多种类型,很多方向。做为一个过来人,简单介绍一些常见的开发方向。 1. 桌面程序:Java、C++、C#、VB、C均可。 现在大家办公使用的还是桌面程序占多数,不管是OA,ERP等等,都是通过PC来操作,桌面程序开发是一个重要的方向。只要PC还在,桌面程序开发就会一直存在。 2. 网站服务器端开发:JSP(Java语法)、PHP、ASP(C#语法)、Web App框架等 互联网发展的一个重要部分
BFF是一种Web架构,全名为Backends For Frontends,即为服务于前端的后端。这个词来源于Sam Newman的一篇文章:Pattern: Backends For Frontends[1]。BFF一般指的是在前端与后端之间加增加一个中间层。为什么要在前端和后端之间增加一个BFF层呢?
概述 当下web服务端开发中最火的名词中绝对有微服务的一席之地,其也成为当下互联网后端服务架构演进历程中最闪亮的技术之一。微服务的基本思想在于考虑围绕着业务领域组件来创建应用,这些应用可独立地进行开发、管理和加速。在分散的组件中使用微服务云架构和平台,使部署、管理和服务功能交付变得更加简单。既然服务被分割和微小化了,我们很容易想到如果将其和docker结合,让docker承载着一个个的微服务运行,如此一来将会让服务间耦合度降低,部署简洁,同时系统的架构也更加清晰,便于长期演进,基于此想法有了这篇文章的入门实
导语 《信息简史》中说“进化本身是生物体与环境之间持续不断的信息交换的具体表现”,前端技术的进化也是如此。浩瀚的前端宇宙中,又出现过哪些耀眼的星辰呢?指引前端未来的“北极星”又在何方?腾讯云高级工程师与你畅谈前端的变革史与新时代的希冀。 周俊鹏 腾讯高级前端工程师 《前端工程化:体系设计与实践》作者 ---- 在正文之前我想简单介绍一下自己的从业背景。 初次接触前端是读书期间的第一份实习工作,在SAP上海研究院TIP BI部门开发基于SVG的Charts库,99%的代码逻辑是将数据用S
初次接触前端是读书期间的第一份实习工作,在SAP上海研究院TIP BI部门开发基于SVG的Charts库,99%的代码逻辑是将数据用SVG转化为可视化的UI。值得一提的是当时用的构建工具是YUI Compressor搭配Ant调度。
所谓跨编程语言和跨操作平台,就是说服务端程序采用Java编写,客户端程序则可以采用其他编程语言编写,反之亦然!跨操作系统平台则是指服务端程序和客户端程序可以在不同的操作系统上运行。
近日,由 EMQ 开源的 MQTT 5.0 跨平台桌面客户端 MQTT X 发布了 1.8.0 版本。MQTT X 为连接测试各类 MQTT 消息服务器而生,支持快速创建多个同时在线的 MQTT 客户端连接,采用一键式的连接方式和简洁的图形界面,帮助使用者便捷地测试 MQTT/TCP、MQTT/TLS、MQTT/WebSocket 的连接、发布、订阅功能,探索更多 MQTT 协议特性。
在web服务端开发中,字符的编解码几乎每天都要打交道。编解码一旦处理不当,就会出现令人头疼的乱码问题。
领取专属 10元无门槛券
手把手带您无忧上云