aehyok.com的成长之路二——技术选型
前言
首先奉上个人网站地址传送门:aehyok.com
在上一篇博客中http://www.cnblogs.com/aehyok/p/3934197.html主要简单的介绍了自己做个人网站的初衷,就是为了督促自己学点技术。让自己抓紧一点,毕竟花的是自己的血汗钱来搞的。要不好好学,都对不起自己。
本人最近也建立了一个QQ技术群,现在里面人数不是不多,是在写上一篇博客时陆陆续续的开始有人加入的。本人个人网站所涉及的所有源码也将会在群内共享。群账号为:206058845,记住群验证码为:aehyok。欢迎各位喜欢学习技术的朋友们入住。。
网站整体架设
1、自己思来想去最终决定在.Net Framework4.5下进行开发。
2、这也造就了服务器使用的Windows Server 2008 R2,貌似在Windows Server2003下安装不了Framework4.5的版本。
3、Visual Studio选择的是VS2013的这个版本。
4、服务器上一直想装Sql Server 2008的版本,苦于一直失败,还好Sql Server2005的版本可以安装,也不影响整体的规划。
5、源代码管理工具自己使用的是微软的在线云TFS: http://www.visualstudio.com/products/visual-studio-online-user-plans-vs。
网站使用.Net技术
在去年年底也对自己进行了一个简单的总结和规划http://www.cnblogs.com/aehyok/p/3495685.html。规划自己之后希望学习到的一些技术或者知识。经过这样一段时间的积累,也发现了一些问题或者产生了一些想法。暂时希望自己的项目网站能够使用如下的技术进行开发,或者有些已经使用了:
1、Asp.Net Mvc:因为是做个网站,自己工作中也用过Asp.Net Mvc,所以选择Mvc的开发模式没什么可考虑的,选择版本Asp.Net Mvc5.0。而且据说MVC 6.0,不再需要依赖System.Web,占的内存大大减少。可以self-host模式运行,网站不再需要依赖IIS而运行,由此从此可以快速向客户演示开发进度,以及更好地支持真正跨平台(Linux、Mac、Unix)。 有关MVC6的资料可以查看http://www.cnblogs.com/kvspas/p/asp-net-mvc6-vnext.html。
2、Entity Framework:工作中一直使用的Ado.Net,自己经常看到博友们分享使用各种ORM框架(EF、NH等等)感觉开发很方便有效率,可以查看现存的在C#语言下的各种ORM框架:各种ORM框架汇总。不过由于微软对于Entity Framework的策略,最终也选择微软的下一代Ado.Net产品EF,选择版本Entity Framework6.0。
3、Entity Framework Code First:自己之前也有简单尝试EF的使用:http://www.cnblogs.com/aehyok/p/3341823.html。选择使用EF的Code First模式,那么对于EF使用Repository仓储模式和UnitOfWork工作单元更是将开发的效率提升到了一个新的层次,虽然现在还不是特别明白,这也是自己最近一直在研究的。
4、Bootstrap3.0:对于非Web前端工程师而言,前端UI肯定是我们的痛处,自己既然想做网站,而且没那么多精力去专门搞UI。之前也一直思考过如果自己来做的话,会选择什么样的框架来做,自己最终学习了Bootstrap3.0,这是我的一个系列文章:http://www.cnblogs.com/strick/p/3946475.html。最终选择BootStrap3.0, 当然这并不是唯一的选择。
5、AutoFac:http://www.cnblogs.com/liping13599168/archive/2011/07/17/2108734.html这是对于比较流行的IOC框架的性能测评,自己也简单尝试过几个IOC框架后,感觉还是AutoFac最适合我吧。唉可惜的就是在工作中使用不到这些好的框架,有点遗憾,所以自己想多研究研究,要不然都有点脱轨了。这里也有一篇关于IOC的讲解:http://www.cnblogs.com/showjan/p/3950989.html。
6、AutoMapper:AutoMapper是基于对象到对象约定的映射工具,常用于(但并不仅限制于)把复杂的对象模型转为DTO,将业务实体Model与UI使用模型分开,所以考虑使用DTO数据传输对象,或者以后还会进行服务的开发,为了传输的更为自由方便效率。
7、T4:一个基于模板的代码生成器。它由文本块和控制逻辑块组成的一个模板,可以自动的生成一些文本。它可以快速的为我们生成一些代码,节省我们的时间。加快开发效率。这里有位大神分享的几篇感觉都很不错:http://www.cnblogs.com/heyuquan/articles/2427494.html#T4
8、单元测试:当身处团队项目,Bug层出不穷的时候,那么单元测试会是一个不错的选择。那么让我们一起走进单元测试吧:http://www.cnblogs.com/yangcaogui/archive/2012/02/06/2337483.html
9、Asp.Net Web API:之前自己简单学习过http://www.cnblogs.com/aehyok/p/3446289.html,但还没成型,打算之后可以用它来做服务。
10、Knockout.js :打算考虑使用MVVM进行解耦,主要目的是分离视图(View)和模型(Model),学习起来也比较简单,之前学习过一段时间http://www.cnblogs.com/aehyok/p/3381562.html
11、Log4Net:log4net是.Net下一个非常优秀的开源日志记录组件。log4net记录日志的功能非常强大。它可以将日志分不同的等级,以不同的格式,输出到不同的媒介。有了这么好的组建,我也没必要进行单独开发了,直接引用封装到项目中吧:http://www.cnblogs.com/aehyok/archive/2013/05/07/3066010.html
12、jQuery:jQuery类库当然必不可少。http://www.cnblogs.com/Jolinson/tag/Jquery/打算继续跟随这个系列学习吧,不知道该博主是否还会将其系列写下去。
13、……14、……15、……以后可能还会用到其他的组件技术。
总结
经过上面的罗列,相信有些人看到了会感觉普普通通的。不过这些对于本人来说,这一切都是从零开始的,在公司工作中,只是对于最基本的MVC算是比较了解了。其他的基本上可以说是都是全新的,自己只是希望通过自己的个人网站,来学习这些自己感觉有用的技术或者知识,来促使自己更好的成长和提高,来更深入的学习。一切都在紧锣密鼓的进行着,毕竟还要上班,进度不会那么理想,不过只要自己一有时间,还是要把精力投入进去,让自己的网站快速的成长。
大家也可以发现,其实上面的知识也是很有关联性的,当然我还需要继续研究一下,然后慢慢整理出自己研究的框架。虽然没有大牛们的好,但毕竟是自己亲自搞出来的。
本人最近也建立了一个QQ技术群,现在里面人数不是很多,是在写上一篇博客的时候开始加人的。本人个人网站所涉及的所有源码也将会在群内共享。群账号为:206058845,记住群验证码为:aehyok。欢迎各位喜欢学习技术的朋友们入住。。期待我们的共同成长。同时希望自己能够一直坚持学习下去。
最后再次奉上个人网站地址传送门:aehyok.com
个人网站地址:aehyok.com
QQ 技术群号:206058845,验证码为:aehyok
本文文章链接:http://www.cnblogs.com/aehyok/p/3946286.html
感谢您的阅读,如果您对我的博客所讲述的内容有兴趣,那不妨点个推荐吧,谢谢支持:-O。
aehyok.com的成长之路二——技术选型的更多相关文章
- aehyok.com的成长之路三——框架结构
前言 首先奉上个人网站地址传送门:aehyok.com. aehyok.com的成长之路一——开篇 中主要阐述了自己为什么建立自己的网站,以及个人网站的大致方向. aehyok.com的成长之路二—— ...
- aehyok.com的成长之路一——开篇
前言 不得不说最近三个月都没更新博客了,除了6月初的一篇博客外,今天的这一篇算是这三个月里发表的第二篇博客了.不过本人几乎每天都在博客园里刷来刷去,看大家发表的博文,从中汲取营养.确实博客园也可以 ...
- WEB架构师成长之路 二
法宝一:牛人爱惜自己的时间. 时间就是金钱,时间就是生命,时间如同健康一样,如果时间都没有,那成功也就是浮云了.所以牛人总是很爱惜自己的时间,总是在想办法提高自己的做事效率.我突然想了起来,我QQ里有 ...
- SpringCloud学习成长之路二 服务客户端(rest+ribbon)
在微服务架构中,业务都会被拆分成一个独立的服务,服务与服务的通讯是基于http restful的. Spring cloud有两种服务调用方式,一种是ribbon+restTemplate,另一种是f ...
- python成长之路二
python的print格式化输出,以及使用format来控制. 1,打印字符串(str),利用%s. >>> print ('My name is %s' % ('TaoXiao' ...
- 阿里技术分享:阿里自研金融级数据库OceanBase的艰辛成长之路
本文原始内容由作者“阳振坤”整理发布于OceanBase技术公众号. 1.引言 OceanBase 是蚂蚁金服自研的分布式数据库,在其 9 年的发展历程里,从艰难上线到找不到业务场景濒临解散,最后在双 ...
- redis成长之路——(二)
redis操作封装 针对这些常用结构,StackExchange.Redis已经做了一些封装,不过在实际应用场景中还必须添加一些功能,例如重试等 所以对一些常功能做了一些自行封装SERedisOper ...
- PHP程序员的技术成长之路规划
按照了解的很多PHP/LNMP程序员的发展轨迹,结合个人经验体会,抽象出很多程序员对未来的迷漫,特别对技术学习的盲目和慌乱,简单梳理了这个每个阶段PHP程序员的技术要求,来帮助很多PHP程序做对照设定 ...
- 京东无人超市的成长之路 如何利用AI技术在零售业做产品创新?
随着消费及用户体验的需求升级.人货场的运营效率需求提升.人工智能技术的突破以及零售基础设施的变革等因素共同推动了第四次零售革命的到来,不仅在国内,国外一线巨头互联网亚马逊等企业都在研发无人驾驶.无人超 ...
随机推荐
- 【转】HTTP状态码(HTTP Status Code)
原文链接:http://www.chaoji.com/features/httpstatus.aspx 一些常见的状态码为: 200 - 服务器成功返回网页 404 - 请求的网页不存在 503 - ...
- [Shell]正则表达式与通配符
----------------------------------------------------------------------------------------- 正则表达式与通配符: ...
- UVAL1277_Cops and Thieves
单源点汇点无向图,要阻隔某个点的流量,必须在一个点上消耗一定的价值,问你能否在消耗价值不超过k的前提下,阻隔源点到汇点的流量. 直接对于有权值的点拆点,拆后边容量即为点权.其余的点的容量无穷,最大流即 ...
- 新浪微博SDK的使用
花了两天时间研究了一下新浪微博SDK,遇到了不少问题,有必要整理一下 1.首先下载下weiboSdk,导入weiboSDKD和weiboSDKDemo两个项目,这时发现导入的weiboSDKDemo项 ...
- 【03_136】Single Number
感谢:http://www.cnblogs.com/changchengxiao/p/3413294.html Single Number Total Accepted: 103007 Total S ...
- day4----生成器,迭代器
迭代器,生成器,装饰器 1.生成器 通过列表生成式,我们可以直接创建一个列表.但是,受到内存限制,列表容量肯定是有限的.而且,创建一个包含100万个元素的列表,不仅占用很大的存储空间,如果我们仅仅需要 ...
- ORA-30004 错误处理
一.问题情景: 原SQL: select c.CATEGORY_ID, c.CATEGORY_NAME, SYS_CONNECT_BY_PATH(c.CATEGORY_NAME ...
- MySQL prepare 原理
Prepare的好处 Prepare SQL产生的原因.首先从mysql服务器执行sql的过程开始讲起,SQL执行过程包括以下阶段 词法分析->语法分析->语义分析->执行计划优化 ...
- SQLServer 2012之AlwaysOn —— 指定数据同步链路,消除网络抖动导致的提交延迟问题
事件起因:近期有研发反应,某数据库从08切换到12环境后,不定期出现写操作提交延迟的问题: 事件分析:在排除了系统资源争用等问题后,初步分析可能由于网络抖动导致同步模式alwayson节点经常出现会话 ...
- Orchard 精简版
Orchard Express v1.7.2 精简版 保留Orchard.Framework和Orchard.Core全部源码(一字未改),去除非必要模块(仅剩Orchard.jQuery, Orch ...