目前WEB开发, 主要就是Java, Asp.net, Php三个方向, 从2005年开始就一直工作于asp.net+sql server方面, 但目前已经分部分精力在搞Java+mysql方面, 元旦之际, 若大办公室一个人在加班, 处理了一些事情后冷静想了一下这二类开发的长缺点这处。
感觉光阴飞逝呀, 自从有了微信后, 小小的节日也给我们这些时尚流的人刷得很隆重似的, 但元旦对我来说, 只是一个普通的日子,在这里祝大家新的一年生活多滋多彩,激情扬溢。
Asp.net开发, 用了几年神器一般的VS IDE与SQL Management Studio, 不管从哪一方面来说, 二个项加起来使用就如和18岁童颜巨乳女优约会般的感觉,温馨美好浪漫甜密。 不会有任何情绪, 从工作到结束, 不会在业务外的地方浪费一丝时间。 虽然是一名工作十年的穷吊丝, 也感觉到自己在某一领域是一名高富帅的感觉。
Asp.net拥有傻瓜式的IDE,使用十年左右时间了, 感觉已经让我失去了对事情摸索的习惯, 习惯一切就是天然无害或污泥而不染的感觉。
从开发环境安装-->新建项目-->页面设计-->代码开发-->代码调试-->日志输出-->生成编译-->项目发布, 在开发方面微软已经是一条龙服务, 比莞式ISO服务还周到。
在服务器运行方面阿里云这个大物又帮我完成了一切,配上几个web服务器, 添加个SLB负载均衡帮我们解决了压力流量分布单点故障, 添加个RDS又帮我们解决了数据库方面的一切问题, 还配有云盾啥啥的, 再配在配一套Hadoop+HIVE离线数据分析平台来进行各部门想要的数据, 一切就是这么完美。
开发人员只解决业务代码, 做一些高并发的地方进行优化, 对一些访问大的页面生成静态页面, ASP.NET发展到现在就像游击队手上拿着机关枪在射杀日本俘虏那样的简单, 小兵张嘎的实现版。
对大项目有完整编制团队可以选择多层开发, 项目经理只管构架, 主程负责接口, 高程负责类实现与一些算法,初程负责一些业务流程代码, 美女帅哥负责前端页面的js,div等等。对小项目三二人团队就用简单的三层开发, 李天平老师已经做出了一个神器, 建设个SQL数据库, 生成了50%的可用代码。(题外:目前在中国很多团队开发工程就三五人,用asp.net来开发简直就是完美的合作, 最近二三年使用Java,感觉真的是晕, 就三五个开发工程师团队开发的项目, 搞SSH框架, 一人负责一个模块, 开发时自己定义一个interface, 再到另一层实现一个类, 我KAO! 在JAVA方面没用SSH框架就好像没脸, 是男人没JJ的感觉, 其实不外乎就是复制,粘贴这些工作!)
asp.net从项目的开始到结束, 不会有半点紧张感觉, 不会出现任何突然间的情绪, 天天唱着小曲上班,吹着口哨下班。 生活感觉还是那么的美好, 要感谢党,感谢祖国,感谢....
但一个完美的东西发展得过于简单, 就没有物以稀为贵的市场需求, 当asp.net工程师越来越贬值, 做着越来越简单的工作时,而且微软对这些东西还收费的时候, 一切都改变了, 当asp.net连吊丝都当不起时, 真不知前路为何方? 前景会如何?
asp.net再不作一些改变, 再过二十年, 相信全中华人民共和国所有14亿群众, 应该没有几个人是不懂这门技术了, 相信到时已经普及到小学一年级的水平了, 如果还有少量公司在用asp.net, 应该是这样: 大公司招一些博士带科班生, 中型公司招一些科班生带培训生, 小型公司招一些培训生带小学生。
当年我们还在用ASP时, 很多人都说, 这等解析型脚本语言的劣货, 不面向OO,加个Com技术也是私生子,早应淘汰。 以前很多asp的公司纷纷转型到asp.net, 这是因为在以前版权问题在中国基本不会发生任何法律问题的时候, 现在不同了, 微软在中国招了千军万马, 成立部门或外包部分区域给其它公司, 对版权进行清查, 而且中国政府也越来越重视盗版问题, 所以asp.net的生存环境就发生了重大的影响, 大公司基本是视而不见, 中型公司是视而不用, 小型公司视为鸡肋。 只有一些公司偷偷的使用或用来做一些内部平台。 从此asp.net不再是上得厅堂下得厨房的18岁童颜巨乳女优。
(这段内容是在我觉得php与asp都是一类解析型的语言为前提下讨论)
当php这种免费脚本型语言整合了免费的mysql, 符合了世界大多公司的胃口, 这种以前给大家BS到井底的脚本型语言又变成了高富帅,不再指责它的页面与代码混乱, 也没有人指责是不是项目式的管理开发, 一切都可以接受, 就像8/90年代穿扎脚的牛仔裤,9/20年代穿宽筒牛仔裤,扎脚的已经快消失了, 但到了2010年后, 扎脚的牛仔裤又很流行了。 这就是市场, 市场决定一切需求, 过去一切的指责在一定需求下也会转变, 不知马克思的转化论有没有帮我们开发人员想过这方面。
我相信asp.net如果放开源码, 免费windows server系统, 免费sql server,再在跨平台上面对mono项目进行收购开源更新,对移动平台开发加强, 不用三天时间, 大家又开始重复以前指责asp的情况, 指责php这类的技术比丑小鸭还丑, 各种以前指责的话题又会重显一次。 虽然对java的冲击虽然没那么明显, 但相信也会改变很多。 很多人会提出, Asp.net性能不好比不上JAVA, 京东就是典型的例子, 最后还是得从asp.net重转java。 如果asp.net开源, 在百花齐放,百家争鸣的环境下, 这些问题应该都是可以得到解决的, 主要是目前没开源,而且平台又收费, 公司还要投入太多成本去研究这东西, 值不值得的问题。
综合以上:Asp.net是一个完美的产品, 但问题就是太过于完美了。 工作可以像游戏一般轻松,没压力,没有物以稀为贵的存在感, 一不小心就给人从穷吊丝的台阶挤下来。
最近二三年经常用到Java开发, 感觉JAVA是一门很不错的技术, 但JavaEE目前在大陆已经给框架绑死了, 开口闭口都是SSH, SpringMVC等等, 在大多公司如果说我是一直用的是servlet,或我单用Struts + mysql类开发, 或只用struts+hibernate开发,你对JAVA技术再叼再牛, 在面试官那里已经是60分以下, 你不会SSH你就是不合格。
在国内的公司, 多数是作坊式迭代开发为主, 团队没有完整的编制(产品经理,项目经理,系统分析师,高程,主程,初程,UI为主)基本上就是三四人的团队,一人做爹又做妈还兼职做钟点工, 开发时先在interface层敲完接口, 复制过去实现类里面, 接着写代码, 可能才华太低发现不了这样开发的好处到底在那里, 唯一想到的就是增强了开发人员的ctrl+c/v的键盘操作。