- 浏览: 835375 次
- 性别:
- 来自: 南京
文章分类
最新评论
-
xieye:
jetty插件有好几个版本,1.6,1.7,1.8
我选的是用 ...
tapestry入门(翻译)3 导入项目到eclipse -
xieye:
还有,
注:第2部分时,需要先安装jetty,我自己在安装过程 ...
tapestry入门(翻译)3 导入项目到eclipse -
xieye:
说明一下:实际使用中,导入时我并没有错误。2、我把eclips ...
tapestry入门(翻译)3 导入项目到eclipse -
xieye:
其实还是有一些先决条件的。1是外部环境,2是进步是阶段性的(意 ...
(转载文章)如何愉悦起来:一位精神治疗师的见解 -
mandy_yanzi:
我都已经饿7天了坚持为了我的衣衣
身体健康的问题
20090101
20090102
20090103
20090104
元旦狂玩了3天机器人大战阿尔法(PS模拟器),才玩了3分之1,我同时开3个分支,企图一次玩遍所有 的关卡,每关都要打3遍,所以进度慢,就象网站一样,进度慢。
今天早晨多睡了15分钟的懒觉,赶到办公室,4个女孩在门口列队欢迎。她们没钥匙。
20090105
20090109
今天记载一个bug修复,跨window,linux的程序员百分百会遇到的问题.
就是大小写,基本上,windows宽松,linux严格,所以我在window下好好运行的
程序,就是不能在linux下跑,
错误语句:
$fp = new FormProcessor_Lib_Addnews($this->db);
修改后
$fp = new FormProcessor_Lib_AddNews($this->db);
一丁点的问题,幸好没上线。
20090116
每天背笔记本上下班,包里装的就是笔记本和电源适配器,电池被我下掉放家里,不用。
今天早晨走的比较匆忙。到单位把包打开一看,是笔记本和游戏手柄。。。
带错了,再回家拿。
20090120
本周开始整合网站的各个主要模块,加链接,简单测试。为上线做准备,领导说,都靠我了。
20090124
今天还要上班,nnd,能开的全开上,什么空调啊,电脑啊,传真机。
没心思写程序,美女们都回家了,没劲。
20090205
最近没什么心思写博客,把原先写的几个模块分别用框架重写,力争2月底第一版上线
20090209
某模块二级域名很麻烦,正在思考解决方案
20090212
继续重写以前的模块,快完了。
20090216
今天突然发现,博客浏览过30000,看来以后写技术文章要谨慎了!!!。写错就是误导啊.
20090221
网站要实现一个需求,显示漂亮的字体,一般用户的机器也不会有,如汉仪_行楷简。
思路:先给服务器加这些字体,再用php的函数imagettftext,该函数可以往图片上加指定字体的文字(包括汉字),强悍的函数啊。
另一种思路是也用这个函数,但是生成透明的图片,只有这些文字,然后通过css放到原先的背景图上。
20090224
还剩两个小模块,就基本OK了。
另外很多细节也没来得及搞,如文章标题的title属性(鼠标移上会出现tips),很多页面的title,分词。
以及最重要的优化。
20090226
主要模块都搞定了,
下面是优化和细节调整:
细节调整:
1、每个页面的title和关键字,还不知怎么搞关键字,没有分词的库
2、调整字数,有的新闻要显示一部分分内容,要截取字数,目前是在模板里设定的
优化(主要参考《高性能网站建设指南》《构建可扩展的Web站点》apache手册,《PHP Web2.0开发实战》):
1、图片实现客户端缓存。
2、对于网站首页,有一个大图片,含有各个背景
3、合并js文件,代价是如果我改动了公用库的js文件,要重新合并,而且调试不便,
可以考虑使用丑陋的if else 然后在配置文件里决定是分开调还是调总的js
4、实现gzip压缩传送
5、服务端缓存,主要靠memcache,
6、给服务器加一个php编译缓存
7、还有很多。
===============================================
规则4:压缩组件
首先处理压缩。windows下就是我的笔记本就不装了
先检查apache是否安装了mod_defalte(请一定注意我用的是apache2。x的版本,apache1对应的是mod_gzip)
进入linux:
apachectl -l
该命令会列出当前apache的所有模块,很幸运,我装了。我当时用的是
tar -zxf httpd-2.2.9.tar.gz
cd httpd-2.2.9
./configure --enable-modules=all
make
make install
既然装了,下面就改配置。
AddOutputFilterByType DEFLATE text/html text/css application/x-javascript application/javascript
把上面一句放在httpd.conf的主机配置或者合适的位置。
把firefox打开测试,把firebug打开,点击“网络”
在任意的html页面刷新,
看到Response Headers
中有这么一句:Content-Encoding:gzip,(本来是没有的)
成功!
其实要点是:观察firebug中页面组件的返回类型,然后填上去就行,但是书上也说,不要压缩所有的图片,切记。
所以上面一行就是压缩html,css和js,
js有两种类型,没办法,一个是书上写的,还一个是我自己的apache返回的,
========================================
关于规则5:将样式表放在顶部,我一直都这样做。
关于规则6:将js脚本放在底部,遗憾,对于我这个网站,不行,因为我在页面中已使用js库的函数了,
这意味着我只能将js脚本放在页面顶部,没办法了。其实这是可以改的,
我将来再改吧:
方法是,把js库的加载放在页面底部,然后,再把当前页面的所有js再放到下面,即可,不过,这样对开发有难度,
再说吧。
另一个办法是,把js库的加载放在页面底部,然后,再把当前页面的所有js都放到prototype库的onload函数里,这个办法应该可行,有空再试。
==========================================
关于规则7:避免css表达式。
美工的css水平低,自然用不到。而我也恪守此准则,坚决不用,实在要用就用js实现。
=========================================
关于规则2:使用内容发布网络,
这要花钱,还要消耗精力,等网站大了再说吧^-^
=========================================================
关于规则8:使用外部javascript和css
相信所有人都是这么做的。我也是
============================================
规则3:添加Expires头和max-age头
apache的mod_expires模块会根据配置自动发送exipres头和max-age头,
跨浏览器改善缓存的最佳解决方案就是使用由expirsDefault设置的Expires头 。
首先我检查是否安装了该模块,幸运的是,已经装好了,当然了,enable-modules=all嘛。
然后改配置,
再虚拟主机里
ExpiresActive On <FilesMatch "\.(gif|jpg|jpeg|png|js|css)$"> ExpiresDefault "access plus 48 hours " </FilesMatch>
如果愿意也可以再补充,
ExpiresByType image/gif "modification plus 5 hours 3 minutes"
modification应该是文件的最后修改时间算起,
access应该是访问的那是算起。
plus无意义。
数字必须整数,后面的时间单位可以是:
-
years
-
months
-
weeks
-
days
-
hours
-
minutes
-
seconds
参考了apache的文档,一个根据正则,一个根据类型。
一般来说,php页面不应被客户端缓存,注意,但是可以在服务端缓存。
js和css可以通过加文件创建时间来hack,如http://ssss.com/js/1.js?123456789这样的url好像不行。
图片应该被缓存较长时间。
但是用户头像怎么办呢?应该缓存较短时间,但还是要缓存,
关于mod_expires模块,apache的资料很详细,容易看懂,不象有些模块。
另外,只要是PHP输出的内容,都可以自行指定所有的头,方便!!
事实上,js,css和所有的图片都可以由PHP输出,只是看有无必要罢了,
检查是否服务器发送了这些头很简单,用firebug看,有了,成功了!!
============================================================
关于规则13:配置ETag
最简单的方法是:移除服务器返回的Etag。
修改apache的配置文件
添加
FileETag none
就这么简单!
进入firebug检验,果然消失,成功!
===================================================
今天后台优化开始,
先装大名鼎鼎的APC,某个php开源缓存,还是吃了不少苦头,
注意:apc.so是动态连接库,和别的php模块的区别,别的大都是静态的,也就是编译好的。如PDO模块!
步骤:进入linux下的php安装目录下的bin目录,应该发现有一个pecl文件
./pecl install apc
如果后悔了,就
./pecl uninstall apc
这个还是方便的。
然后会问你问题,不管,直接回车。
最后会提示你装好,
Build process completed successfully Installing '/usr/local/php/lib/php/extensions/no-debug-non-zts-20060613/apc.so' install ok: channel://pecl.php.net/APC-3.0.19 configuration option "php_ini" is not set to php.ini location You should add "extension=apc.so" to php.ini
关键是这里:
进入php.ini,
一定改extension_dir="./"
为php下的某个目录,如,可以自己创建
extension_dir="/usr/local/php/extension"
并在php.ini文件最后加
[apc]
extension=apc.so
这里还可以加参数,不加也有默认值。
然后,用find命令搜索apc.so,find /usr -name apc.so
然后把该文件拷贝到extension_dir指定目录,并设为777属性。
重启apache,用phpinfo()函数应该可以看到,很明显,
在
HTTP Headers Information下面,
是
apc
APC Support | enabled |
Version | 3.0.19 |
MMAP Support | Enabled |
MMAP File Mask | no value |
Locking type | pthread mutex Locks |
Revision | $Revision: 3.154.2.5 $ |
Build Date | Feb 27 2009 15:36:02 |
总之,在phpinfo里看到才可以,说明装好。如上面显示的信息
我失败的原因是没有改extension_dir
搞定!
===========================================
关于linux启动的重要问题。
必须linux启动后进入文本界面,这样又可以省下很多内存。必须的。
============================================
20090228
前台优化规则1:减少HTTP请求,
今天我主要搞这个,css是美工写的,一个页面最多两三个,所以我不优化。
今天合并js,改天搞主页的图片Sprites。
合并js,但是小的js仍然保留,我决定用改文件名的正规方式,如sitejs_1.js是合并后的js。当任意一个小文件改了后,都要重新合并,并且改名为sitejs_2.js。同时把序号和文件名存数据库,于是每次在页面发送php时,需要到库里查序号,然后发送。
但是这样有一些问题,主要是开发机器和生长服务器版本不同怎么办。
于是我转换策略,每次发送页面时,到某个固定文件夹下找js文件,文件名的开头是sitejs_
然后,发送这个js。
结果到最后,发现不需要数据库了,因为生成前可以读取文件名,把序号加1不就行了吗?
20090303
今天要先把各页面中的广告用程序直接插入数据库,唯一麻烦的就是图片上传,编辑诉苦说上传的东西太多,所以广告我先来搞,
今天和美工一起实现了首页的图片sprite,就是一个大图片gif,里面包含了很多小图片。
然后和领导一起到某网络公司取经,对方的项目经理用asp,不过对于网站优化很有经验,最最重要就一条,少查数据库,增删改是没办法的,那只能少查。以应付每日百万PV。
领会了。
20090304
确定今天的工作,专题要首页改,js合并,自动生成广告记录。
20090305
继续昨天未完工作.,
把网站的汉字名称输入google,第4页才查到,
输入百度,根本找不到,
没关系,目标就是第一。时间3个月内估计应该实现。
20090306
今天的工作:检查了首页的图片加载,确保没有大图片。
增加一个用户传logo的功能。
还有,给页面加标题和关键字,很多还没做,事真多呀
20090309
今天的工作,完成标题和关键字的页面添加,思考并开始实现apache的监控,
其实早该做的,不然都不知道网站的访问量有多大。
20090310
昨晚到9点下班,今天的工作,继续把分站的标题搞定,然后开始实现apache的监控
20090311
最近研究了apache的日志功能,也很有意思,不过不打算用第三方的分析工具,
自己写PHP分析吧!反正都是文本文件。
并打算建表,字段,主键,时间,分析结果字符串。日PV。时间段应该加唯一索引。
每天一条记录插入。
然后每月的统计,只根据数据库来,就不看日志了,
日志只供日统计用。
20090312
今天继续日志分析,
已看到百度的爬虫了。
服务器文件都是用svn更新的,今天在apache配置文件中阻止了客户端对.svn目录的访问。
并且在根目录下增加了robots。txt这个文件允许所有的爬虫。
20090313
今天继续日志分析。
今天发现一个方法,如何查看网站后台密码受攻击。
可以在php程序中看,也可以直接分析apache日志
日志中,存在用户名且服务器代码不是200,就是受到密码破解,
日志的好处是占用资源少。
用php程序的好处是可以实时预防,如收到同一IP20次错误,则封锁IP,
而且用php总是可以自己完全的控制。
各有各优点。
20090314
今天星期六,今天的工作:做两个新页面,同时把以前模块部分链接指向新页面。
20090316
今天继续做服务中心。
发现无论如何努力都不能把set names utf8的查询语句移除。遗憾。
20090317
今天做后台的管理员权限分配。
就是有多个管理员,决定哪个管理员能进哪个模块,可以由超级管理员决定。
20090318
昨晚小通宵一把,搞后台管理员权限设置。
今天的工作:某模块预先用美术字体生成静态图片。文字,都预先的生成好,然后直接在页面发送图片。
20090319
今天继续把图片生成好,把相应页面改好
20090320
今天本想做memcache的,临时新任务,再做留言板。
网站即将上线,我已在单位内部感受到一种宗教式的狂热,自己也象打了鸡血般兴奋,加班也不知道累
20090324
今天,在领导的同意下,新功能暂时先放,先搞缓存。
我的计划是memcache,然后只缓存数据,不存对象,
数据分两种,一种是数据库里查出的数据,一般来说是数组,也有不是的。
另一种是模板处理后的数据,就是html片段,注意是片段。
为什么说是模板处理后,是因为模板中也有函数,我用的是smarty。
而函数处理要花时间,所以最好缓存处理后得到的html代码。
并决定后台不缓存,只缓存前台。
===========================
window下memcache的安装和使用
下载服务端的windows版,这个轻而易举,我下的是1.2.1,最新稳定版是1.2.4,但我未用。
然后php扩展,官方网站居然说网站正在重建?!我只能破口大骂Y。。。
google一番,终于找到如下网址
http://cn.php.net/get/pecl-5.2.6-Win32.zip/from/a/mirror
注意我用的是PHP5.2.6版本。
下载下来后,我哭了。
然后,我又发现,我机器上的windows版的php安装目录已经自带了所有的dll扩展。包括这个php_memcache.dll。
我又哭了。
下面的工作就简单了。
几个发现:
1)似乎windows版的可能是版本低,好像不支持对象存储。原因不明,但是反正我也不打算存储对象。
2)memcache的php客户端的api,都有两种写法,过程的或是对象的,手册中写的很清楚。
当然,我用对象的,
3)为保险起见,我用connect,不用持久连接pconnect.
4)有人说“利用memcached常用的做法:在每取得一次cached对象后,重新设置这个对象的cache时间,这样能够使得经常被调用的对象可以长期滞留在缓存中,使得效率增倍。”
这个说法我不认可,因为需要定期更新,哪怕命中了。
memcached的基本设置:
-p 监听的端口
-l 连接的IP地址, 默认是本机
-d start 启动memcached服务
-d restart 重起memcached服务
-d stop|shutdown 关闭正在运行的memcached服务
-d install 安装memcached服务
-d uninstall 卸载memcached服务
-u 以的身份运行 (仅在以root运行的时候有效)
-m 最大内存使用,单位MB。默认64MB
-M 内存耗尽时返回错误,而不是删除项
-c 最大同时连接数,默认是1024
-f 块大小增长因子,默认是1.25
-n 最小分配空间,key+value+flags默认是48
-h 显示帮助
4)重要的方法getStats()会返回数组,其中,
我自己的测试,windows下默认预分配
64M,可以从$mem->getStats()返回的数组的'limit_maxbytes' => '67108864'项看出。
而'bytes'表示正在使用的字节数,很重要。
其余猜也猜出来:
'pointer_size' => '32',32位指针,
'curr_items' => '9', 内存当前条目数,这个不重要,重要的是占内存多少。
'get_hits' => '1359', 服务开启以来命中次数
'get_misses' => '234' 服务开启以来失败次数
'bytes_read' => '41257', 服务开启以来读取总字节数,不重要
'bytes_written' => '114318' 服务开启以来写入总字节数,不重要
网上查的资料说:如果内存满了,再往里写,会挤走以前的数据,未经证实,但是,我不需要
管这些,因为当这种情况出现时,说明该加内存,或减少程序对memcache的依赖,或者设置压缩写入等
我写程序每10分钟查一次memcache内存占用,然后日志记录。
bool Memcache::set ( string key, mixed var [, int flag [, int expire]] )
set函数的用法是最重要的,而且依据php语法,最好不要放置数字0,免得分不清是有缓存结果0,还是没有读到缓存。
我肯定不压缩,所以,flag设为0, 时间默认是多少,我还真不知道,不过也不关心,必须给它设一个秒数。
经过慎重思考:决定暂时不用zend的缓存接口(它可以包含memcache),因为不熟悉,所以先还是直接使用memcache的客户端。
=================
linux 下memcache的服务端和客户端安装
参考《黑夜路人的开源世界》
http://blog.csdn.net/heiyeshuwu/archive/2006/11/13/1380838.aspx
我不按照文章中的路径安装还不行,真是神人。
NOTE: 如果 libevent 不是安装在 /usr 目录下,那么需要把 libevent-1.2a.so.1 拷贝/链接(ls -s /usr/local/lib/libevent-1.1.so.1 /usr/lib)到 /usr/lib 中,否则memcached 无法正常加载。运行以下命令来启动 memcached。
服务器版本是memcache1.2.6,比windows版本高一些。
装完后,装客户端,也是按照文章中的链接,
有两种选择(memcache 和 memcached),按照黑夜路人的推荐,选择了较老的memcache
版本2.2.5。
memcache客户端php安装参考了如下文章
http://www.linuxsir.org/main/?q=node/184
安装memcache PHP模块
root@tonyvicky:# tar vxzf memcache-1.5.tgz
root@tonyvicky:# cd memcache-1.5
root@tonyvicky:# /usr/local/php/bin/phpize
root@tonyvicky:# ./configure --enable-memcache --with-php-config=/usr/local/php/bin/php-config --with-zlib-dir
root@tonyvicky:# make
root@tonyvicky:# make install
之后,用find命令寻找/usr 下的memcache.so这个文件的位置,把它拷贝到你php.ini中extension_dir
下的路径即可。
extension=memcache.so
这时,重启服务器,用phpinfo终于又在linux下看到了和window下类似的模样
memcache
Active persistent connections | 0 |
Version | 2.2.5 |
Revision | $Revision: 1.111 $ |
memcache.allow_failover | 1 | 1 |
memcache.chunk_size | 8192 | 8192 |
memcache.default_port | 11211 | 11211 |
memcache.default_timeout_ms | 1000 | 1000 |
memcache.hash_function | crc32 | crc32 |
memcache.hash_strategy | standard | standard |
memcache.max_failover_attempts | 20 | 20 |
爆感动,感谢开源世界啊,偶泪流满面。。
发表评论
-
召唤神龙 - 安装 centos 8, php 8, mysql 8, laravel 8 的整套 php 运行环境
2020-11-27 16:26 712本文编写时间:2020-11-27 传说集齐龙珠可以召唤神 ... -
centos8 使用阿里镜像快速安装php7.4套件
2020-11-15 00:48 856centos8 使用阿里镜像快速安装php7.4套件 本文只 ... -
centos7 使用阿里镜像快速安装php7.4套件
2020-11-15 00:32 1259本文只考虑centos7 今日 2020-11-16 rem ... -
composer常用命令
2020-11-05 14:46 1483列出当前全局配置 composer config -l -g ... -
期待centos8+php8 + mysql8 + laravel8,8888
2020-10-29 19:24 525期待centos8+php8 + mysql8 目前主要使用 ... -
ubuntu 安装 php7.4以及各类插件
2020-10-24 13:20 1133ubuntu 安装 php7.4以及各类插件 安装系统 最近 ... -
宝塔定义站点
2020-02-24 10:41 2宝塔定义站点。 1111111111111111111111 ... -
让php-fpm以root账号运行
2020-02-19 21:41 827一般来说,我们没有这种需求,但是当需要时, 可以让php-fp ... -
将代码部署到coding.net
2020-01-10 14:20 650coding.net 是一个git仓库,有免费有收费。 首先 ... -
php部署工具deployer技巧 - vendor目录创建
2020-01-06 12:06 914deployer是个好东西,可是每次都composer ,其实 ... -
自定义redis多个实例
2020-01-04 01:17 650假如多个项目部署到同一台服务器,有时会被redis的各项目前缀 ... -
推荐使用php的部署工具 deployer
2020-01-03 16:48 921php部署代码可以使用 https://deployer.or ... -
使用composer 类库 cachetool 清除opcache 的缓存
2020-01-03 16:38 968php的生产服务器上,需要把opche打开。 但有时,会被缓 ... -
laravel容器学习体会
2019-12-31 15:11 677根据文档与实测结果 假设我在app下建一个Services目 ... -
phalcon 自定义超强日志类
2019-12-18 10:00 834phalcon自带的日志文件类,有两个麻烦之处。 1、路径不能 ... -
自定义后台的使用
2019-12-18 05:22 425如果自己写后台,保存用户的表单请求值 所有的情况如下: 1 ... -
phalcon 自定义事件使用的多种方式
2019-12-16 20:43 781方法1:官方文档的方式。 这是控制器: public ... -
phalcon对控制器返回值的使用以输出json
2019-12-16 19:17 836在phalcon里,控制器的Action的方法的返回值没啥用。 ... -
phalcon数据库DB使用实例
2019-12-12 17:12 703整理了一下phalcon的db使用,写了个demo。 ... -
php-redis5.0降级成php-redis4.3
2019-08-22 00:01 896最新版本的php的redis插件,版本是5.0 但是可能会有 ...
相关推荐
Drupal建站实录是一篇关于使用Drupal构建内容管理系统(CMS)的教程,主要涵盖了从需求分析、安装配置、模块选择到内容创建的整个流程。Drupal是一个开源的Web内容管理框架,广泛用于创建社区驱动和复杂功能的网站。...
本资源“ASP快速建站全程实录源码”是针对初学者和希望快速搭建网站的开发者的一份宝贵教程,由陈季编制,并由电子工业出版社出版。通过这个教程,读者将能够学习到如何利用ASP技术高效地构建网站。 ASP的核心概念...
《ASP.NET项目开发案例全程实录(第2版)》所有案例源码,不包括视频,如要包括视频的,请下载以下所有文件再解压: 《ASP.NET项目开发案例全程实录(第2版)》随书光盘.part01.rar ...《ASP.NET项目开发案例全程实录...
根据提供的文件标题、描述、标签以及部分内容来看,虽然部分内容并没有提供实际的文字信息,但从文件标题“C#项目开发案例全程实录(第2版).pdf”可以推断出该文件主要涉及C#语言的项目开发过程及案例分析。...
《C#项目开发案例全程实录(第二版) 源代码》是明日科技推出的针对C#编程语言的实战教程,旨在帮助读者深入理解和掌握C#在实际项目中的应用。这个压缩包包含了17个不同的代码示例和项目,其中包括12个练习例程和5个...
### Java项目开发全程实录第二章:企业内部通信系统(Swing+JavaDB) #### 一、章节概览 在《Java项目开发全程实录》第二章中,作者重点介绍了如何利用Swing和JavaDB来构建一个企业级的内部通信系统。本章不仅覆盖...
很抱歉,根据您提供的信息,无法提供有关“C#项目开发案例全程实录(第2版)”的具体知识点,因为文档内容似乎仅包含了重复的下载网址,而没有实际的内容描述或者相关的技术细节。为了能够提供丰富的知识点,我需要...
《CSS网站布局实录第2版源代码》这本书深入探讨了使用CSS(层叠样式表)来构建现代网页布局的设计与实现技术。CSS是Web开发中的核心组成部分,它赋予网页结构与样式分离的能力,使设计更为灵活且易于维护。在这个...
《PHP项目开发案例全程实录(第2版)》是一本专注于PHP项目开发的书籍,面向希望通过实际案例学习PHP开发技能的读者。本书通过详尽的案例讲解,帮助读者掌握PHP语言的使用技巧,以及如何构建一个完整的Web应用项目。...
《C# 项目开发案例全程实录(第2版)》是一本专为C#开发者设计的实战指导书籍,其附带的光盘包含了丰富的1.5GB学习资源,是C#开发者的必备参考资料。该书及光盘内容旨在通过实际的项目案例,帮助读者深入理解和掌握...
CSS网站布局实录:基于Web标准的网站设计指南(第2版)》内容提要: 本书是一本讲述基于Web标准的应用CSS进行网站布局设计与重构的典范之作。 本书以实例为主,一步步地告诉大家如何进行符合Web 2.0标准的CSS布局设计。...
《CSS网站布局实录:基于Web标准的网站设计指南(第2版)》内容提要: 本书是一本讲述基于Web标准的应用CSS进行网站布局设计与重构的典范之作。 本书以实例为主,一步步地告诉大家如何进行符合Web 2.0标准的CSS布局设计...
《Visual c++ 项目开发案例 全程实录》(第二版)第四章 局域网监控系统 配套源代码
《Visual C++ 项目开发案例 全程实录》(第二版)是一本深入探讨C++编程技术在实际项目中的应用的书籍,尤其注重实践操作和案例分析。书中的第8章聚焦于“学生管理系统”的设计与实现,通过这个案例,读者可以学习到...
.MyTaoBao【】[Android应用实战淘宝网手机客户端全程实录(第一季)].MyTaoBao_final【】实战Android淘宝网手机客户端后续第2_3_4季内容大纲【】淘宝网手机客户端_第二讲.系统分层架构的思路 资源太大,传百度网盘了,...
《ASP.NET项目开发案例全程实录(第2版)》随书光盘.part01.rar
《ASP.NET项目开发案例全程实录(第2版)》随书光盘.part15.rar