神武新区为什么那么多人拥有神兽

嘻嘻 嘻嘻
回答
  • 狂风17级 狂风17级

    展开全部
    原文地址:http://coolshell.cn/articles/4990.html
    博文如下:
    前言
    你是否觉得自己从学校毕业的时候只做过小玩具一样的程序?走入职场后哪怕没有什么经验也可以把以下这些课外练习走一遍(朋友的抱怨:学校课程总是从理论出发,作业项目都看不出有什么实际作用,不如从工作中的需求出发)
    建议:
    不要乱买书,不要乱追新技术新名词,基础的东西经过很长时间积累而且还会在未来至少10年通用。回顾一下历史,看看历史上时间线上技术的发展,你才能明白明天会是什么样。一定要动手,例子不管多么简单,建议至少自己手敲一遍看看是否理解了里头的细枝末节。一定要学会思考,思考为什么要这样,而不是那样。还要举一反三地思考。注:你也许会很奇怪为什么下面的东西很偏unix/linux,这是因为我觉得windows下的编程可能会在未来很没有前途,原因如下:
    现在的用户界面几乎被两个东西主宰了,1)web,2)移动设备ios或android。windows的图形界面不吃香了。越来越多的企业在用成本低性能高的linux和各种开源技术来构架其系统,windows的成本太高了。微软的东西变得太快了,很不持久,他们完全是在玩弄程序员。详情参见《windows编程**史》
    所以,我个人认为以后的趋势是前端是web+移动,后端是linux+开源。开发这边基本上没windows什么事。启蒙入门
    1、学习一门脚本语言,例如python/ruby
    可以让你摆脱对底层语言的恐惧感,脚本语言可以让你很快开发出能用得上的小程序。实践项目:
    处理文本文件,或者csv(关键词 python csv,python open,python sys)读一个本地文件,逐行处理(例如 word count,或者处理log)
    遍历本地文件系统(sys,os,path),例如写一个程序统计一个目录下所有文件大小并按各种条件排序并保存结果
    跟数据库打交道(python sqlite),写一个小脚本统计数据库里条目数量
    学会用各种print之类简单粗暴的方式进行调试
    学会用google(phrase,domain,use reader to follow tech blogs)
    为什么要学脚本语言,因为他们实在是太方便了,很多时候我们需要写点小工具或是脚本来帮我们解决问题,你就会发现正规的编程语言太难用了。2、用熟一种程序员的编辑器(不是ide)和一些基本工具
    vim/emacs/notepad+,学会如何配置代码补全,外观,外部命令等。source insight(或 ctag)
    使用这些东西不是为了cool,而是这些编辑器在查看、修改代码/配置文章/日志会更快更有效率。3、熟悉unix/linux shell和常见的命令行
    如果你用windows,至少学会用虚拟机里的linux,vmware player是免费的,装个ubuntu吧
    一定要少用少用图形界面。学会使用man来查看帮助
    文件系统结构和基本操作 ls/chmod/chown/rm/find/ln/cat/mount/mkdir/tar/gzip…
    学会使用一些文本操作命令 sed/awk/grep/tail/less/more…
    学会使用一些管理命令 ps/top/lsof/netstat/kill/tcpdump/iptables/dd…
    了解/etc目录下的各种配置文章,学会查看/var/log下的系统日志,以及/proc下的系统运行信息
    了解正则表达式,使用正则表达式来查找文件。对于程序员来说unix/linux比windows简单多了。(参看我四年前csdn的博文《其实unix很简单》)学会使用unix/linux你会发现图形界面在某些时候实在是太难用了,相当地相当地降低工作效率。4、学习web基础(html/css/js)+服务器端技术(lamp)
    未来必然是web的世界,学习web基础的最佳网站是w3school。学习html基本语法
    学习css如何选中html元素并应用一些基本样式(关键词:box model)
    学会用 firefox+firebug 或 chrome 查看你觉得很炫的网页结构,并动态修改。学习使用j**ascript操纵html元件。理解dom和**页(dynamichtml: the definitive reference,3rd edition-o'reilly media)网上有免费的章节,足够用了。或参看 dom。学会用 firefox+firebug 或 chrome 调试j**ascript代码(设置断点,查看变量,性能,控制台等)
    在一台机器上配置apache 或 nginx
    学习php,让后台php和前台html进行数据交互,对服务器相应浏览器请求形成初步认识。实现一个表单提交和反显的功能。把php连接本地或者远程数据库 mysql(mysql 和 sql现学现用够了)
    跟完一个名校的网络编程课程(例如:http://www.stanford.edu/~ouster/cgi-bin/cs142-fall10/index.php )不要觉得需要多于一学期时间,大学生是全职一学期选3-5门课,你业余时间一定可以跟上
    学习一个j**ascript库(例如jquery 或 extjs)+ajax(异步读入一个服务器端图片或者数据库内容)+json数据格式。http: the definitive guide 读完前4章你就明白你每天上网用浏览器的时候发生的事情了(proxy,gateway,browsers)
    做个小网站(例如:一个小的留言板,支持用户登录,cookie/session,增、删、改、查,上传图片附件,分页显示)
    买个域名,租个空间,做个自己的网站。进阶加深
    1、c语言和操作系统调用
    重新学c语言,理解指针和内存模型,用c语言实现一下各种经典的算法和数据结构。推荐《计算机程序设计艺术》、《算法导论》和《编程珠玑》。学习(麻省理工免费课程)计算机科学和编程导论
    学习(麻省理工免费课程)c语言内存管理
    学习unix/linux系统调用(unix高级环境编程),了解系统层面的东西。用这些系统知识操作一下文件系统,用户(实现一个可以拷贝目录树的小程序)
    用fork/wait/waitpid写一个多进程的程序,用pthread写一个多线程带同步或互斥的程序。多进程多进程购票的程序。用signal/kill/ra**e/alarm/pause/sigprocmask实现一个多进程间的信号量通信的程序。学会使用gcc和gdb来编程和调试程序(参看我的《用gdb调试程序》)
    学会使用makefile来编译程序。(参看我的《跟我一起写makefile》)
    ipc和socket的东西可以放到高级中来实践。学习windows sdk编程(windows 程序设计,mfc程序设计)
    写一个窗口,了解winmain/winprocedure,以及windows的消息机制。写一些程序来操作windows sdk中的资源文件或是各种图形控件,以及作图的编程。学习如何使用msdn查看相关的sdk函数,各种wm_消息以及一些例程。这本书中有很多例程,在实践中请不要照抄,试着自己写一个自己的例程。不用太多于精通这些东西,因为gui正在被web取代,主要是了解一下windows 图形界面的编程。virushuo 说:“我觉得gui确实不那么热门了,但充分理解gui工作原理是很重要的。包括移动设备开发,如果没有基础知识仍然很吃力。或者说移动设备开发必须理解gui工作,或者在win那边学,或者在mac/ios上学”。2、学习j**a
    j**a 的学习主要是看经典的core j**a《j**a 核心技术编程》和《j**a编程思想》(有两卷,我仅链了第一卷,足够了,因为j**a的图形界面了解就可以了)
    学习jdk,学会查阅j**a api doc j**a platform se 6
    了解一下j**a这种虚拟机语言和c和python语言在编译和执行上的差别。从c、j**a、python思考一下“跨平台”这种技术。学会使用ide eclipse,使用eclipse 编译,调试和开发j**a程序。建一个tomcat的网站,尝试一下jsp/servlet/jdbc/mysql的web开发。把前面所说的那个php的小项目试着用jsp和servlet实现一下。3、web的安全与架构
    学习html5,网上有很多很多教程,以前酷壳也介绍过很多,我在这里就不罗列了。学习web开发的安全问题(参考新浪微博被攻击的这个事,以及ruby的这篇文章)
    学习http server的rewrite机制,nginx的反向代理机制,fast-cgi(如:php-fpm)
    学习web的静态页面缓存技术。学习web的异步工作流处理,数据cache,数据分区,负载均衡,水平扩展的构架。实践任务:
    使用html5的canvas 制作一些web动画。尝试在前面开发过的那个web应用中进行sql注入,js注入,以及xss攻击。把前面开发过的那个web应用改成构造在nginx+php-fpm + 静态页面缓存的网站
    4、学习关系型数据库
    你可以安装mssqlserver或mysql来学习数据库。学习教科书里数据库设计的那几个范式,1nf,2nf,3nf,…
    学习数据库的存过,触发器,视图,建索引,游标等。学习sql语句,明白表连接的各种概念(参看《sql join的图示》)
    学习如何优化数据库查询(参看《mysql的优化》)
    实践任务:设计一个论坛的数据库,至少满足3nf,使用sql语句查询本周,本月的最新文章,评论最多的文章,最活跃用户。5、一些开发工具
    学会使用svn或git来管理程序版本。学会使用junit来对j**a进行单元测试。学习c语言和j**a语言的coding standard 或 coding guideline。(我n年前写过一篇关c语言非常简单的文章—《编程修养》,这样的东西你可以上网查一下,一大堆)。推荐阅读《代码大全》《重构》《代码整洁之道》
    高级深入
    1、c++/j**a 和面向对象
    我个人以为学好c++,j**a也就是举手之劳。但是c++的学习曲线相当的陡。不过,我觉得c++是最需要学好的语言了。参看两篇趣文“c++学习信心图”和“21天学好c++”
    学习(麻省理工免费课程)c++面向对象编程
    读我的“如何学好c++”中所推荐的那些书至少两遍以上(如果你对c++的理解能够深入到像我所写的《c++虚函数表解析》或是《c++对象内存存局(上)(下)》,或是《c/c++返回内部静态成员的陷阱》那就非常不错了)
    然后反思为什么c++要干成这样,j**a则不是?你一定要学会对比c++和j**a的不同。比如,j**a中的初始化,垃圾回收,接口,异常,虚函数,等等。实践任务:
    用c++实现一个bigint,支持128位的整形的加减乘除的操作。用c++封装一个数据结构的容量,比如hash table。用c++封装并实现一个智能指针(一定要使用模板)。《设计模式》必需一读,两遍以上,思考一下,这23个模式的应用场景。主要是两点:1)钟爱组合而不是继承,2)钟爱接口而不是实现。(也推荐《深入浅出设计模式》)
    实践任务:
    使用工厂模式实现一个内存池。使用策略模式制做一个类其可以把文本文件进行左对齐,右对齐和中对齐。使用命令模式实现一个命令行计算器,并支持undo和redo。使用修饰模式实现一个酒店的房间价格订价策略—旺季,服务,vip、旅行团、等影响价格的因素。学习stl的用法和其设计概念-容器,算法,迭代器,函数子。如果可能,请读一下其源码。实践任务:尝试使用面向对象、stl,设计模式、和windowssdk图形编程的各种技能
    做一个贪吃蛇或是俄罗斯方块的游戏。支持不同的级别和难度。做一个文件浏览器,可以浏览目录下的文件,并可以对不同的文件有不同的操作,文本文件可以打开编辑,执行文件则执行之,mp3或**i文件可以播放,图片文件可以展示图片。学习c++的一些类库的设计,如:mfc(看看候捷老师的《深入浅出mfc》),boost,ace,cppunit,stl(stl可能会太难了,但是如果你能了解其中的设计模式和设计那就太好了,如果你能深入到我写的《stl string类的写时拷贝技术》那就非常不错了,ace需要很强在的系统知识,参见后面的“加强对系统的了解”)
    j**a是真正的面向对象的语言,j**a的设计模式多得不能再多,也是用来学习面向对象的设计模式的最佳语言了(参看j**a中的设计模式)。推荐阅读《effective j**a》and《j**a解惑》
    学习j**a的框架,j**a的框架也是多,如spring,hibernate,struts 等等,主要是学习j**a的设计,如ioc等。j**a的技术也是烂多,重点学习j2ee架构以及jms,rmi,等消息传递和远程调用的技术。学习使用j**a做web service(官方教程在这里)
    实践任务:尝试在spring或hibernate框架下构建一个有网络的web service的远程调用程序,并可以在两个service中通过jms传递消息。c++和j**a都不是能在短时间内能学好的,c++玩是的深,j**a玩的是广,我建议两者选一个。我个人的学习经历是:
    深究c++(我深究c/c++了十来年了)
    学习j**a的各种设计模式。2、加强系统了解
    重要阅读下面的几本书:
    《unix编程艺术》了解unix系统领域中的设计和开发哲学、思想文化体系、原则与经验。你一定会有一种醍醐灌顶的感觉。《unix网络编程卷1,套接字》这是一本看完你就明白网络编程的书。重要注意tcp、udp,以及多路复用的系统调用select/poll/epoll的差别。《tcp/ip详解 卷1:协议》-这是一本看完后你就可以当网络黑客的书。了解以太网的的运作原理,了解tcp/ip的协议,运作原理以及如何tcp的调优。实践任务:
    理解什么是阻塞(同步io),非阻塞(异步io),多路复用(select,poll,epoll)的io技术。写一个网络聊天程序,有**器和多个聊天客户端(服务端用udp对部分或所有的的聊天客户端进multicast或broadcast)。写一个简易的http服务器。《unix网络编程卷2,进程间通信》信号量,管道,共享内存,消息等各种ipc…这些技术好像有点老掉牙了,不过还是值得了解。实践任务:
    主要实践各种ipc进程序...

类似问答
  • 神武 为什么别人装备这么多特技?

    提问时间:2024-05-03 09:19:23

    那是别人获得的装备拿去鉴定货从制造书中打造出来拿去鉴定获得的特技,感觉神**备不管是打怪获得还是打造获得都很容易获得特技,当然要看个人的人品的了。从其他**手中...

  • 天涯明月刀为什么那么多人玩神威

    提问时间:2024-05-03 11:35:28

    这个人物有远有近单练是再好不过的了,但是现在 的游戏 都是1 2 个人或 5 6 个人一起,这人物真心不强,远的没唐门近的没丐帮真武太白等人物厉害。所以如果不是...

  • 为什么有人要用神泣和魔兽比呢

    提问时间:2024-05-03 10:34:10

    最垃圾的是神泣靠着几张性感的宣传画吸引人气一旦进入游戏知到了它的老底就再也不光顾的**垃圾服务器我朋友从下载安装好游戏到现在都没能进去过

  • 为什么神武69后好多人不升级了

    提问时间:2024-05-03 00:24:19

    卡在69可以把修为跑满技能也补满存经验直接升80这样可以省下70全套的装备最少也得省个几十万神武币另外卡在69级的人比较多同级别做活动.刷副本也比较好组

  • 神武3手游新区怎么样

    提问时间:2024-05-03 15:30:41

    长时间玩的话还是玩老区比较好开新区的频率很快,鬼的也快,人少就合区,新区没加成,升级也慢,级别上限也低,短暂时间玩的话,新区很有成就感,长时间的话建议还是玩老区...

  • 神武新区,打算停95,先期swb做什么好,打算存个任务型神兽。

    提问时间:2024-05-03 13:01:24

    新区直飞到95停的话 建议只接保留还童丹 神武币购买宝石 因为前期宝石便宜 越来越贵 山水可以选择性的挖 挖山水囤货还是可以的毕竟前期没有妖王出货几率稍大。60...

  • 刀塔传奇为什么新区那么多人有斧王

    提问时间:2024-05-03 02:14:34

    首抽出的,比较靠谱的前排肉盾,前排肉盾,和潮汐相比肉的不够纯粹,也没有控制,升星更是困难,因此略逊一筹,但是在输出端比潮汐更加给力。前期很强大的一个肉盾,不过随...

  • 大话神仙新区为什么那么多人玩猎手

    提问时间:2024-05-03 22:01:45

    那就不知道了 玩什么 是别人的 选择的!【9199传奇】开放了十年多了,是一款类似于热血传奇的2d网络游戏。游戏核心版本是2001年网络上流传的我本沉默版本进化...

  • 神武新区玩法

    提问时间:2024-05-03 14:51:21

    上班族就不建议新区了,冲级冲不上。神武玩的是时间,不是rmb。

  • 部落冲突瓦基丽武神为什么那么多人用

    提问时间:2024-05-03 16:33:18

    因为好用!

精品推荐

友情链接

友链互换QQ:

谷财 备案编号:蜀ICP备11019336号-3商务合作:235-677-2621

Copyright 2009-2020 Chengdu Sanzilewan Technology Co.,Ltd all rights reserve

抵制不良游戏 拒绝盗版游戏 注意自我保护 谨防受骗上当 适度游戏益脑 沉迷游戏伤身 合理安排时间 享受健康生活