说句实话,如果你不是因为有兴趣,那么女生最好还是不要做程序员。
做程序员很苦很累,对身体也不好,钱可能暂时多一下,以后发展也是大问题。特别是现在许多企业都不招收女性做程序员……除非你很牛。
如果你选定了做程序员这条路,那么恭喜你,你至少要做好三件事的准备。
1、放弃正常生活,放弃女性爱美的心态,把精力投入到看书看代码写程序上,放弃对购物化妆的爱好,否则你将很快被新人新技术淘汰。
2、做好被拒绝被剥削的思想准备,由于生理原因,软件行业的程序员一般不喜欢用女性,就算是女性做程序员,工资也很难超过男性程序员,除非……你很牛。
3、做好长期低收入的准备。刚入行的程序员一般在2-3K之间(不排除你运气好,微软要你给你开10K的收入),而且如果不能在2-3年内得到发展,那么你的工资在4-5K左右将不会再变动,直到你30岁被踢出程序员的行列前,你将一直拿这个工资。
如果你愿意,那么我再根据你以后想从事的专业,给你提一下你该学习的知识。
如果你看了我写的东西还没有被吓倒,那么我继续谈你该学习的内容。
做程序员,应该选好自己努力的方向。是准备做ERP,通讯,嵌入式等等,是准备在WINDOWS平台下发展还是在UNIX“LINUX下发展,你以后准备由技术-技术架构,还是技术-管理。如果只是被动的走,只想多拿钱,那么我可以告诉你,你这个程序员是非常失败的,而且以后路会越走越窄,不要指望公司会为你考虑发展,国内公司都是非常自私的。
无论如何,作为程序员,以下几个内容必须掌握
C语言,数据结构,算法,编译原理(不强求,至少知道词法分析和语法分析),OS的一些基本原理(进程调度,内存调度等等),计算机体系结构,软件工程
其他的要求至少英语四级(不然MSDN没法看),写过程序,数学不要太差
如果你掌握了这些内容,说明你至少和科班出身站在了同一起跑线上了。下面再根据你自己愿意从事专业发展。发展大致可以按平台划分
1、WINDOWS平台
2、LINUX/UNIX平台
3、嵌入式平台
WINDOW平台机会最多,待遇也最低,LINUX/UNIX次子,嵌入式待遇最好。但是学习机会刚好相反,WIN平台很好学,LINUX/UNIX一般用于大型机,而你自己估计平时也不会用这些东西,至于嵌入式,如果公司不给你机会学习,那你根本就没法进入这个行业。
当如,如果你在三个平台之一能做到精通,那么待遇都会很高。不过我敢说,就算CSDN,真正能透彻了解WINDOWS运行机制,能把API运用的纯熟的人都不会太多。
如果你做网络,网络也可以分很多。你是准备做布线,管理,架构还是研发?如果研发,又可以分写一般通讯程序,路由等网络设备研发(已经偏硬)等。
那么建议你至少熟悉以下内容
多平台的进程调度多线程和线程同步(TCP/IP协议在不同平台通讯很正常)
TCP/IP协议的了解熟悉C/C++(跨平台C开发,包括VC,GCC等等)