我想做一个合格的工程师

我想吐槽下,在新公司经过三个月的试用期,前两天终于完成了转正答辩,其实答辩就是两个我们项目组的两个项目经理(一个项目经理马上要离任了,另外一个新来的两个月,继任前者作为项目经理。),还有一个人事的同事。连一个部门经理或者稍大点的领导都没有参与我的答辩。感觉答辩的意义都没有了,但是巨坑的是,新项目经理说“有木有打算培训班学习想法”,“对数据库的应用要学习学习”,我想这不是赤裸裸讽刺我基础太差么?其实我确实来这家公司之前,没有用过MVC,这个能力也学稍弱与这个项目经理。但是我可以讲,我的其他能力绝对不输给他。因为他写的代码和一些功能点的实现方式都略有看过。以下我截图给大家看看:

我要用left join,他说要用inner join不展示错误数据,其实我就想要把错误数据展示出来,发现后解决问题,隐藏使的问题永远不会保存,用户数据是越来越乱。

我用in,他要用=,这个我了解了下,确实用in效率低,那是因为原来我们公司根本不需要太考虑这个问题,导致了我的写作习惯,执行速度客户接受即可,毕竟客户的数据量在那里。

其实就上面我说讲的,我的问题,我改正。但是不要用那种你自己高高在上,别人差强人意,那种姿态。只是我没讲,并不是我不知道。

说说今天的正题“我如何做一个合格的工程师”,作为一个web软件工程师,必须要知道基础四点:前端,后台,数据库,部署。每一点都是要求的,用专业名词叫做“规范”。其实这个规范,是长时间积累,文字描述出来的经验,方便所有人共同使用,提高工作效率,避免杂乱无章。先在这里提供《.NET之美》作者张子阳写的一篇《.Net 项目代码风格要求》下面开始我就着这四点,逐步讲讲我的认识和心得,注意我会采取倒叙的方式,不当之处望大家指正。

一、 部署

a、 简介

我们做一个web项目,总是需要安装部署到客户的服务器,服务器硬件及服务器系统软件不同,都会影响到软件的使用。

b、 要求掌握

1)、硬件:服务器分为刀片式、塔式、机架式

2)、软件:Windows Server 系列,Linux 系列

3)、网络:局域网,城域网,广域网

c、 认识及心得

为什么让大家要掌握以上一些知识呢,这是因为不同的客户层次,对于办公环境有着不同的要求,毕竟这些环境跟金钱都是挂钩的,小客户和大客户的考虑和经费都不一样的。这个使我们产品定位时,要掌握到的信息。这关系到用户数量,在线用户数量,并发量及数据量。这样我们又可以反推客户能给我们提供什么档次的部署环境。然后我们在编码阶段,代码实现方式肯定会因为这些条件影响。(注,Linux是可以部署.NET MVC,文章链接为http://www.cnblogs.com/wang_yb/archive/2012/08/22/2650960.html,此文章我没有进行验证)

二、 数据库

a、 简介

数据库目的就是存储数据。现在主流的关系型数据库有Oracle、DB2、Microsoft SQL Server、Microsoft Access、MySQL等等。

b、 要求掌握

掌握sql语句,触发器,存储过程,函数,游标,视图,索引等等。每一个数据库语法虽然都一定的差异,但是基本上学习了其中一种,就降低了其他数据库sql语法的学习成本了。

c、 认识和心得

不管是谁,我想都会理解到数据是“金”概念。每当我电子产品出现问题,我们都会担心它里面的数据会不会丢失,会不会找不回来。每当有人使用我们的电子产品是我们都会当心他会不会把里面的数据误删或弄乱。可想,数据的有时候不是金钱直接可以衡量的,因为丢失或者弄乱就很难恢复了。

以下为数据库设计提几点建议:

1)、要保证表与表之间的强内聚弱耦合

2)、尽量避免不必要的数据冗余

3)、尽量不要把一对多的关系存储在某一个字段里进行体现。

4)、列名一定要清晰易懂无歧义,尽量使用约定俗成的名称,不要随意标新立异

5)、重中之重的一点,表名,列名要注释

6)、可适当通过外键建立表关系

注:其实这些大部分都是属于三范式的要求,但是我发现很多人在设计的时候,都在考虑后期通过sql读取数据方便,并未考虑数据的维护,和业务是否合理。

三、 后台

a、 简介

其实这个很简单,就是C#,有很多人都认为C#很好学,Java难学,但是我的没有感觉,一个语言的精通需要通过很长时间的积累的。

b、 要求掌握

其实就是我们很多书上讲的,这些掌握了,基本开发不难

c、 认识和心得

1)、要有代码分层分类概念

2)、好的注释习惯

3)、规范的编码风格

4)、封装能力强(精简的参数,少用重载,多用可选参数)

5)、能够将代码进行调优

6)、列名一定要清晰易懂无歧义,尽量使用约定俗成的名称,不要随意标新立异

四、 前端

a、 简介

这块就是html部分,也是很多.net工程师的弱项。当然也是我的弱项。但是基本的调整,和一些代码规范我都会的。这里还牵扯到,项目各类文件夹和文件的放置,这个也要有要求。

b、 要求掌握

html、css、JavaScript

c、 认识和心得

1)、css和js引用顺序,先css再js

2)、js我一直认为是提高体验度的,并不适合大量的客户端运算

3)、对前台代码,要做垃圾清理,无用的和无意义的注释都要清理掉。

4)、封装js

5)、会调试,css和js

6)、会一定的前端调优

时间: 2024-12-22 16:37:07

我想做一个合格的工程师的相关文章

做一个“合格”的程序员

其实这篇文章很早就想写了,一直忙的没有时间,今天总算得空,下面就针对程序员这个职业来说一说我个人的一些想法: 要想做一个在我认为是"合格"的程序员,那么应该要做到以下几点: 代码规范,注释清楚 要做一个好的程序员,代码的质量是最重要的,代码是项目过程中最为重要的资源,有很多程序员觉得写注释太麻烦,还会花太多时间,尤其是很多规模比较小的公司,更不会注重这一点,但是往往到了项目后期,乃至项目由他人接手后,维护的成本会变得非常高,代码阅读困难,注释不详细甚至没有,维护人员需要靠自己去猜测某个

如何做一个合格的策划

今天以我自己的角度来谈一谈“如何做一个合格的策划”,一个合格的游戏策划,必须先具备以下几个基本条件:1. 对游戏炽烈的爱.2. 责任心.3. 活跃的大脑.4. 强大学习能力.5. 强大的领悟能力.6. 良好的工作习惯 一. 对游戏炽烈的爱 为什么把“对游戏炽烈的爱”列为第一条? 如果没有爱,那就没有激情!有激情才可以激发一个人的生命潜力,有激情才可以支持这个人在未来事业上走的更久,走的更远. 游戏研发是一个枯燥的过程,整天面对的是纷繁的系统设计.数值计算.玩家心理等.作为游戏策划需要时刻保持高昂

如何做一个合格的程序员

不知不觉做软件已经做了十年,有成功的喜悦,也有失败的痛苦,但总不敢称自己是高手,因为和我心目中真正的高手们比起来,还差的太远.世界上并没有成为高手的捷径,但一些基本原则是可以遵循的. 1. 扎实的基础.数据结构.离散数学.编译原理,这些是所有计算机科学的基础,如果不掌握他们,很难写出高水平的程序.据我的观察,学计算机专业的人比学其他专业的人更能写出高质量的软件.程序人人都会写,但当你发现写到一定程度很难再提高的时候,就应该想想是不是要回过头来学学这些最基本的理论.不要一开始就去学OOP,即使你再

作为程序员我是怎么想做一个网站的?

原文地址:http://www.cnblogs.com/phphuaibei/p/3364469.html 本身作为一个网站开发者,做网站本来是件很容易的事情,但是真正到了给自己做一个网站的时候,却不知道该如何下手了! 事件描述: 本来想做一个简单的活动日历,可以在月历视图里面查看每周活动,就怎么简单!-----一个网页的需求 突然我想到,每周的活动详情还是要一个页面,还需要对应的后天发布,管理--------一个CMS的需求 如果有活动,那么他们可能要跟帖讨论问题,还有她们也可以发活动的---

做一个合格的程序猿之浅析Spring AOP源码(十八) Spring AOP开发大作战源码解析

其实上一篇文章价值很小,也有重复造轮子的嫌疑,网上AOP的实例很多,不胜枚举,其实我要说的并不是这个,我想要说的就是上一节中spring的配置文件: 我们这边并没有用到我们上几节分析的哪几个AOP的主要实现类:ProxyFactoryBean.java , ProxyFactory.java ,AspectJProxyFactory.java ,在我们这个配置文件中,根本没有显示的去配置这些类,那么spring到底是怎么做到的呢? 大家可以这么想,spring到底是怎么去杀害目标对象的呢?真正的

想做一个完美的健身训练计划,你须要知道什么?

想有好的生活品质,就必须拥有一个健康的体魄.移动精英开发俱乐部特别邀请了国内知名的评衡教练 JT 给我们分享几期健身文章.本期是第 4 次健身分享,这次健身课的主题为「怎样做一个完整的健身计划?」,文章由 ITOM 管理平台 OneAPM 审校整理: 首先,本次讨论的主题是.当我们在健身的时候,怎样给自己安排一个完整的健身训练?这套训练应该包含哪几部分内容呢? 事实上.从大的方面而言,一套完整的健身训练.主要包含热身.训练和放松三个环节,当然,每一个部分也都有一些小环节.本期JT教练主要主要环绕

想做一个完美的健身训练计划,你需要知道什么?

想有好的生活品质,就必须拥有一个健康的体魄.移动精英开发俱乐部特别邀请了国内知名的评衡教练 JT 给我们分享几期健身文章,本期是第 4 次健身分享,这次健身课的主题为「如何做一个完整的健身计划?」,文章由 ITOM 管理平台 OneAPM 审校整理: 首先,本次讨论的主题是,当我们在健身的时候,如何给自己安排一个完整的健身训练?这套训练应该包括哪几部分内容呢? 其实,从大的方面而言,一套完整的健身训练,主要包括热身.训练和放松三个环节,当然,每个部分也都有一些小环节.本期JT教练主要主要围绕训练

想做一个Web应用

昨天和小伙伴一起聊了很久,在我们这个行业, 现在大家的处境,烦恼以及未来,其实我也很多的困惑,但小伙伴也有蛮多苦恼,但相对小伙伴的烦恼,我的烦恼就很Low了, 我说我想搭一个自己的个人博客来练手,所以就会有很多的问题,这是一个全栈的结构,所有的事情都必须自己完成,这是在强迫看书去完成,为的就是提高个人技术,我想以这个作为一个突破口,如果这个可以做到,我想我其他的事情也可以做的很好,所以这期间要做的准备其实还蛮多的,因为这是从前段到后端,选择怎么的技术栈路线. 今天写下这些文字,是因为我自己从来没

001 做一个合格的喷子---springcloud起步

一 .概述 本次开始springcloud的学习,参考的资料有springcloud微服务实践--翟永超和周立的springcloud与docker实践.国内的书籍不多,但是这两本都算不错,覆盖的内容也是比较多的,参照官方文档就开始本次的初始化. 本次使用周立老师的书籍作为整体的演进方式. 二 .微服务概述 微服务的出现时一个演进的过程,我们先回想一下我们最初的架构的内容. 单体应用,我们最初的项目就是一个war包,这就是一个all in one的单体工程.在单体工程之中,我们的部署和开发都算简