三个简单问题,一个问题10分!

yezhutou 2003-08-26 10:38:45
1、我要实现用一个变量存储另外两个字符串变量的值。也就是比如说jdkID="CS",mproname="DN",我用mtablename存储CSDN,可以用下面这句话实现吗?语法上有错误吗?mtablename=jdkID&mproname
2、我要查询三个表里的所有数据,并显示出来可以用以下程序段实现吗?
set rs=server.createobject("adodb.recordset")
rs.open "select * from table1,table2,table3 where time between 60 and 80",cn,3,3
一上程序段里的time会取哪个table里面的time列呢,需要指明吗?
3、如果需要指明的话,那我要是三个table都是变量怎么办呢,比如说下面这个程序段
alltable=table1&table2&table3
set rs=server.createobject("adodb.recordset")
rs.open "select * from '"alltable"' where time between 60 and 80",cn,3,3
我很想知道的是,表名是不是不允许用变量?
...全文
59 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
yezhutou 2003-08-28
  • 打赏
  • 举报
回复
俺的问题解决的,解决的方式很奇怪,我把我的源程序从新敲了一遍就通过了,程序出来的时候我比没出来的时候还郁闷,还是谢谢大家了!
yezhutou 2003-08-26
  • 打赏
  • 举报
回复
大家救急,我快烦死了!
yezhutou 2003-08-26
  • 打赏
  • 举报
回复
我要查一个表里的所有数据,表名为一个变量tablename,怎么写?
Brookes 2003-08-26
  • 打赏
  • 举报
回复
1.正确
2.不可以这么写,必须将表连接起来才可以
select * from table1 inner join table2
where table1.id=table2.id

或者使用Union
select id,a from table1
union
select id,b from table2
3.参考2
yezhutou 2003-08-26
  • 打赏
  • 举报
回复
语句怎么写啊?
kibbery 2003-08-26
  • 打赏
  • 举报
回复
关于第二个问题,据我所知,应该需要将三个Table连接起来,才能显示出来,连接可以用join等方法。
Brookes 2003-08-26
  • 打赏
  • 举报
回复
1.正确!
2.不可以,如果你想去三个表,必须用某种方法将它们连接起来,比如
select * from table1 inner join table2
where table1.id=table2.id
3.假设不成立,指明表可以参考2
yezhutou 2003-08-26
  • 打赏
  • 举报
回复
没解决啊,我第二个问题主要是想知道要查询三个表里所有的数据并显示出来是不是可以用rs.open "select * from table1,table2,table3"这样的语句,RS里面存的会是三个表里所有的数据吗?
pimple 2003-08-26
  • 打赏
  • 举报
回复
1、mtablename=jdkID+mproname
2、这个这个……要看表的结构了。要指明的。
3、指明可以这样。TABLE1.TIME ,TABLE2.TIME
 面试的时候,设计模式会经常被问到。其实我们在写代码中或多或少会用到一些模式,面试官问你设计模式的问题,更多是看你有没有总结过。如果一直都是在那垒代码,你当然会认为这是个很难的问题。所以我们需要总结一下设计模式。   1. SINGLETON 单例模式   单例模式:单例模式确保某一个类只有一个实例,而且自行实例化并向整个系统提供这个实例单例模式。单例模式只应在有真正的“单一实例”的需求时才可使用。     俺有6个漂亮的老婆,她们的老公都是我,我就是我们家里的老公Sigleton,她们只要说道“老公”,都是指的同一个人,那就是我(刚才做了个梦啦,哪有这么好的事)。   2. FACTORY METHOD 工厂方法模式   工厂方法模式:核心工厂类不再负责所有产品的创建,而是将具体创建的工作交给子类去做,成为一个抽象工厂角色,仅负责给出具体工厂类必须实现的接口,而不接触哪一个产品类应当被实例化这种细节。     请MM去麦当劳吃汉堡,不同的MM有不同的口味,要每个都记住是一件烦人的事情,我一般采用Factory Method模式,带着MM到服务员那儿,说“要一个汉堡”,具体要什么样的汉堡呢,让MM直接跟服务员说就行了。   3. FACTORY 工厂模式   工厂模式:客户类和工厂类分开。消费者任何时候需要某种产品,只需向工厂请求即可。消费者无须修改就可以接纳新产品。缺点是当产品修改时,工厂类也要做相应的修改。如:如何创建及如何向客户端提供。     追MM少不了请吃饭了,麦当劳的ji翅和肯德基的ji翅都是MM爱吃的东西,虽然口味有所不同,但不管你带MM去麦当劳或肯德基,只管向服务员说“来四个ji翅”就行了。麦当劳和肯德基就是生产ji翅的Factory。   4. BUILDER 建造模式   建造模式:将产品的内部表象和产品的生成过程分割开来,从而使一个建造过程生成具有不同的内部表象的产品对象。建造模式使得产品内部表象可以独立的变化,客户不必知道产品内部组成的细节。建造模式可以强制实行一种分步骤进行的建造过程。     MM超级爱听的就是“我爱你”这句话了,见到不同地方的MM,要能够用她们的方言跟她说这句话哦,我有一个多种语言翻译机,上面每种语言都有一个按键,见到MM我只要按对应的键,它就能够用相应的语言说出“我爱你”这句话了,国外的MM也可以轻松搞掂,这就是我的“我爱你”builder。(这一定比美军在伊拉克用的翻译机好卖)   5. PROTOTYPE 原型模式   原型模式允许动态的增加或减少产品类,产品类不需要非得有任何事先确定的等级结构,原始模型模式适用于任何的等级结构。缺点是每一个类都必须配备一个克隆方法。     跟MM用QQ聊天,一定要说些深情的话语了,我搜集了好多肉麻的情话,需要时只要copy出来放到QQ里面就行了,这就是我的情话prototype了。 原型模式:通过给出一个原型对象来指明所要创建的对象的类型,然后用复制这个原型对象的方法创建出更多同类型的对象。   6. ADAPTER 适配器模式   适配器(变压器)模式:把一个类的接口变换成客户端所期待的另一种接口,从而使原本因接口原因不匹配而无法一起工作的两个类能够一起工作。适配类可以根据参数返还一个合适的实例给客户端。     在朋友聚会上碰到了一个美女Sarah,从拉斯维加斯来的,可我不会说粤语,她不会说普通话,只好求助于我的朋友kent了,他作为我和Sarah之间的Adapter,让我和Sarah可以相互交谈了(也不知道他会不会耍我)。   7. BRIDGE 桥梁模式   桥梁模式:将抽象化与实现化脱耦,使得二者可以独立的变化,也就是说将他们之间的强关联变成弱关联,也就是指在一个软件系统的抽象化和实现化之间使用组合/聚合关系而不是继承关系,从而使两者可以独立的变化。     早上碰到MM,要说早上好,晚上碰到MM,要说晚上好;碰到MM穿了件新衣服,要说你的衣服好漂亮哦,碰到MM新做的发型,要说你的头发好漂亮哦。不要问我“早上碰到MM新做了个发型怎么说”这种问题,自己用BRIDGE组合一下不就行了。   8. COMPOSITE 合成模式   合成模式:合成模式将对象组织到树结构中,可以用来描述整体与部分的关系。合成模式就是一个处理对象的树结构的模式。合成模式把部分与整体的关系用树结构表示出来。合成模式使得客户端把一个个单独的成分对象和由他们复合而成的合成对象同等看待。     Mary今天过生日。“我过生日,你要送我一件礼物。”“嗯,好吧,去商店,你自己挑。”“这件T恤挺漂亮,买,这条裙子好看,买,这个包也不错,买。”“喂,买了三件了呀,我只答应送一件礼物的哦。”“什么呀,T恤加裙子加包包,正好配成一套呀,小姐,麻烦你包起来。”“……”,MM都会用Composite模式了,你会了没有?   9. DECORATOR 装饰模式   装饰模式:装饰模式以对客户端透明的方式扩展对象的功能,是继承关系的一个替代方案,提供比继承更多的灵活性。动态给一个对象增加功能,这些功能可以再动态的撤消。增加由一些基本功能的排列组合而产生的非常大量的功能。     Mary过完轮到Sarly过生日,还是不要叫她自己挑了,不然这个月伙食费肯定玩完,拿出我去年在华山顶上照的照片,在背面写上“较好的的礼物,就是爱你的Fita”,再到街上礼品店买了个像框(卖礼品的MM也很漂亮哦),再找隔壁搞美术设计的Mike设计了一个漂亮的盒子装起来……,我们都是Decorator,最终都在修饰我这个人呀,怎么样,看懂了吗?   10. FACADE 门面(外观)模式   门面模式:外部与一个子系统的通信必须通过一个统一的门面对象进行。门面模式提供一个高层次的接口,使得子系统更易于使用。每一个子系统只有一个门面类,而且此门面类只有一个实例,也就是说它是一个单例模式。但整个系统可以有多个门面类。     我有一个专业的Nikon相机,我就喜欢自己手动调光圈、快门,这样照出来的照片才专业,但MM可不懂这些,教了半天也不会。幸好相机有Facade设计模式,把相机调整到自动档,只要对准目标按快门就行了,一切由相机自动调整,这样MM也可以用这个相机给我拍张照片了。   11. FLYWEIGHT 享元模式   享元模式:FLYWEIGHT在拳击比赛中指最轻量级。享元模式以共享的方式高效的支持大量的细粒度对象。享元模式能做到共享的关键是区分内蕴状态和外蕴状态。内蕴状态存储在享元内部,不会随环境的改变而有所不同。外蕴状态是随环境的改变而改变的。外蕴状态不能影响内蕴状态,它们是相互独立的。将可以共享的状态和不可以共享的状态从常规类中区分开来,将不可以共享的状态从类里剔除出去。客户端不可以直接创建被共享的对象,而应当使用一个工厂对象负责创建被共享的对象。享元模式大幅度的降低内存中对象的数量。     每天跟MM发短信,手指都累死了,最近买了个新手机,可以把一些常用的句子存在手机里,要用的时候,直接拿出来,在前面加上MM的名字就可以发送了,再不用一个一个字敲了。共享的句子就是Flyweight,MM的名字就是提取出来的外部特征,根据上下文情况使用。   12. PROXY 代理模式   代理模式:代理模式给某一个对象提供一个代理对象,并由代理对象控制对源对象的引用。代理就是一个人或一个机构代表另一个人或者一个机构采取行动。某些情况下,客户不想或者不能够直接引用一个对象,代理对象可以在客户和目标对象直接起到中介的作用。客户端分辨不出代理主题对象与真实主题对象。代理模式可以并不知道真正的被代理对象,而仅仅持有一个被代理对象的接口,这时候代理对象不能够创建被代理对象,被代理对象必须有系统的其他角色代为创建并传入。     跟MM在网上聊天,一开头总是“hi,你好”,“你从哪儿来呀?”“你多大了?”“身高多少呀?”这些话,真烦人,写个程序做为我的Proxy吧,凡是接收到这些话都设置好了自己的回答,接收到其他的话时再通知我回答,怎么样,酷吧。   13. CHAIN OF RESPONSIBLEITY 责任链模式   责任链模式:在责任链模式中,很多对象由每一个对象对其下家的引用而接起来形成一条链。请求在这个链上传递,直到链上的某一个对象决定处理此请求。客户并不知道链上的哪一个对象最终处理这个请求,系统可以在不影响客户端的情况下动态的重新组织链和分配责任。处理者有两个选择:承担责任或者把责任推给下家。一个请求可以最终不被任何接收端对象所接受。     晚上去上英语课,为了好开溜坐到了然后一排,哇,前面坐了好几个漂亮的MM哎,找张纸条,写上“Hi,可以做我的女朋友吗?如果不愿意请向前传”,纸条就一个一个的传上去了,糟糕,传到第一排的MM把纸条传给老师了,听说是个老一手女呀,快跑!   14. COMMAND 命令模式   命令模式:命令模式把一个请求或者操作封装到一个对象中。命令模式把发出命令的责任和执行命令的责任分割开,委派给不同的对象。命令模式允许请求的一方和发送的一方独立开来,使得请求的一方不必知道接收请求的一方的接口,更不必知道请求是怎么被接收,以及操作是否执行,何时被执行以及是怎么被执行的。系统支持命令的撤消。     俺有一个MM家里管得特别严,没法见面,只好借助于她弟弟在我们俩之间传送信息,她对我有什么指示,就写一张纸条让她弟弟带给我。这不,她弟弟又传送过来一个COMMAND,为了感谢他,我请他吃了碗杂酱面,哪知道他说:“我同时给我姐姐三个男朋友送COMMAND,就数你最小气,才请我吃面。”   15. INTERPRETER 解释器模式   解释器模式:给定一个语言后,解释器模式可以定义出其文法的一种表示,并同时提供一个解释器。客户端可以使用这个解释器来解释这个语言中的句子。解释器模式将描述怎样在有了一个简单的文法后,使用模式设计解释这些语句。在解释器模式里面提到的语言是指任何解释器对象能够解释的任何组合。在解释器模式中需要定义一个代表文法的命令类的等级结构,也就是一系列的组合规则。每一个命令对象都有一个解释方法,代表对命令对象的解释。命令对象的等级结构中的对象的任何排列组合都是一个语言。     俺有一个《泡MM真经》,上面有各种泡MM的攻略,比如说去吃西餐的步骤、去看电影的方法等等,跟MM约会时,只要做一个Interpreter,照着上面的脚本执行就可以了。   16. ITERATOR 迭代子模式   迭代子模式:迭代子模式可以顺序访问一个聚集中的元素而不必暴露聚集的内部表象。多个对象聚在一起形成的总体称之为聚集,聚集对象是能够包容一组对象的容器对象。迭代子模式将迭代逻辑封装到一个独立的子对象中,从而与聚集本身隔开。迭代子模式简化了聚集的界面。每一个聚集对象都可以有一个一个以上的迭代子对象,每一个迭代子的迭代状态可以是彼此独立的。迭代算法可以独立于聚集角色变化。     我爱上了Mary,不顾一切的向她求婚。Mary:“想要我跟你结婚,得答应我的条件” 我:“什么条件我都答应,你说吧” Mary:“我看上了那个一克拉的钻石” 我:“我买,我买,还有吗?” Mary:“我看上了湖边的那栋别墅” 我:“我买,我买,还有吗?” Mary:“我看上那辆法拉利跑车” 我脑袋嗡的一声,坐在椅子上,一咬牙:“我买,我买,还有吗?” ……   17. MEDIATOR 调停者模式   调停者模式:调停者模式包装了一系列对象相互作用的方式,使得这些对象不必相互明显作用。从而使他们可以松散偶合。当某些对象之间的作用发生改变时,不会立即影响其他的一些对象之间的作用。保证这些作用可以彼此独立的变化。调停者模式将多对多的相互作用转化为一对多的相互作用。调停者模式将对象的行为和协作抽象化,把对象在小尺度的行为上与其他对象的相互作用分开处理。     四个MM打麻将,相互之间谁应该给谁多少钱算不清楚了,幸亏当时我在旁边,按照各自的筹码数算钱,赚了钱的从我这里拿,赔了钱的也付给我,一切就OK啦,俺得到了四个MM的电话。   18. MEMENTO 备忘录模式   备忘录模式:备忘录对象是一个用来存储另外一个对象内部状态的快照的对象。备忘录模式的用意是在不破坏封装的条件下,将一个对象的状态捉住,并外部化,存储起来,从而可以在将来合适的时候把这个对象还原到存储起来的状态。     同时跟几个MM聊天时,一定要记清楚刚才跟MM说了些什么话,不然MM发现了会不高兴的哦,幸亏我有个备忘录,刚才与哪个MM说了什么话我都拷贝一份放到备忘录里面保存,这样可以随时察看以前的记录啦。   19. OBSERVER 观察者模式   观察者模式:观察者模式定义了一种一队多的依赖关系,让多个观察者对象同时监听某一个主题对象。这个主题对象在状态上发生变化时,会通知所有观察者对象,使他们能够自动更新自己。     想知道咱们公司**MM情报吗?加入公司的MM情报邮件组就行了,tom负责搜集情报,他发现的新情报不用一个一个通知我们,直接发布给邮件组,我们作为订阅者(观察者)就可以及时收到情报啦。   20. STATE 状态模式   状态模式:状态模式允许一个对象在其内部状态改变的时候改变行为。这个对象看上去象是改变了它的类一样。状态模式把所研究的对象的行为包装在不同的状态对象里,每一个状态对象都属于一个抽象状态类的一个子类。状态模式的意图是让一个对象在其内部状态改变的时候,其行为也随之改变。状态模式需要对每一个系统可能取得的状态创立一个状态类的子类。当系统的状态变化时,系统便改变所选的子类。     跟MM交往时,一定要注意她的状态哦,在不同的状态时她的行为会有不同,比如你约她今天晚上去看电影,对你没兴趣的MM就会说“有事情啦”,对你不讨厌但还没喜欢上的MM就会说“好啊,不过可以带上我同事么?”,已经喜欢上你的MM就会说“几点钟?看完电影再去泡吧怎么样?”,当然你看电影过程中表现良好的话,也可以把MM的状态从不讨厌不喜欢变成喜欢哦。   21. STRATEGY 策略模式   策略模式:策略模式针对一组算法,将每一个算法封装到具有共同接口的独立的类中,从而使得它们可以相互替换。策略模式使得算法可以在不影响到客户端的情况下发生变化。策略模把行为和环境分开。环境类负责维持和查询行为类,各种算法在具体的策略类中提供。由于算法和环境独立开来,算法的增减,修改都不会影响到环境和客户端。     跟不同类型的MM约会,要用不同的策略,有的请电影比较好,有的则去吃小吃效果不错,有的去海边浪漫最合适,单目的都是为了得到MM的芳心,我的追MM锦囊中有好多Strategy哦。   22. TEMPLATE METHOD 模板模式   模板方法模式:模板方法模式准备一个抽象类,将部分逻辑以具体方法以及具体构造子的形式实现,然后声明一些抽象方法来迫使子类实现剩余的逻辑。不同的子类可以以不同的方式实现这些抽象方法,从而对剩余的逻辑有不同的实现。先制定一个珠峰逻辑框架,而将逻辑的细节留给具体的子类去实现。     看过《如何说服女生上床》这部经典文章吗?女生从认识到上床的不变的步骤分为巧遇、打破僵局、展开追求、接吻、前戏、动手、爱抚、进去八大步骤(Template method),但每个步骤针对不同的情况,都有不一样的做法,这就要看你随机应变啦(具体实现)。   23. VISITOR 访问者模式   访问者模式:访问者模式的目的是封装一些施加于某种数据结构元素之上的操作。一旦这些操作需要修改的话,接受这个操作的数据结构可以保持不变。访问者模式适用于数据结构相对未定的系统,它把数据结构和作用于结构上的操作之间的耦合解脱开,使得操作集合可以相对自由的演化。访问者模式使得增加新的操作变的很容易,就是增加一个新的访问者类。访问者模式将有关的行为集中到一个访问者对象中,而不是分散到一个个的节点类中。当使用访问者模式时,要将尽可能多的对象浏览逻辑放在访问者类中,而不是放到它的子类中。访问者模式可以跨过几个类的等级结构访问属于不同的等级结构的成员类。     情人节到了,要给每个MM送一束鲜花和一张卡片,可是每个MM送的花都要针对她个人的特点,每张卡片也要根据个人的特点来挑,我一个人哪搞得清楚,还是找花店老板和礼品店老板做一下Visitor,让花店老板根据MM的特点选一束花,让礼品店老板也根据每个人特点选一张卡,这样就轻松多了。 
尹成Python27天从入门到实战项目!全课665节讲解详细易操作,助力实战项目能力成长,轻松、简单、易懂!day1  python入门与学习方法精确思维与用到才能记忆深刻课程简介课前介绍计算机简介与硬盘概念内存作用计算机小结编程语言简介操作系统简介python版本简介切换python版本修改环境变量交互式编程两种风格python3代码保存必须是utf-8使用IDE了解注释段落打印三引号注释多行三个单引号python代码要严格对齐中文输入字符错误简单数学表达式代码风格三种错误风格系统执行指令运行结果乱码交互式编程绘图绘制线段与圆形改变颜色绘制奥运五环小结习题day1plus python  常量变量数据类型 常量与变量区别标识符关键字输入输出id求地址type求类型python变量是地址赋值可以改变类型python主要数据类型复数数据类型自适应变长整数intdel作用连续赋值交互对称赋值字符串转化与输入输出编程wmv多行拆分多行归并成一行规范用的常量算术运算符科学计数法与数字越界优先级结合性赋值运算符数据类型转换四舍五入数据提取时间处理作业day2   python字符串与绘图复习变量None变量参与运算没有赋值的情况不会改变绘制立方体绘制五角星时间计算强化实现贷款计算连续输入多个字符串加法与绘图实现显示线段长度数据函数使用快速查阅函数帮助字符串三种风格字符与编号中文字符编号问题字符编号用途统一码转义字符意义转义字符用于字符串print高级用法字符串加法与转换字符串小结python中所有的数据都是对象字符串格式化了解进制图形绘制重点作业以及学习认知方法day3   python运算符与ifelse逻辑语句第一天上午回顾第二天下午回顾1第二天回顾2.7习题解答2.11习题解答2.26作业KaliLinux简介3.4实现五边形面积计算3.7随机字符生成3.8实数误差与四舍五入3.18解答与特殊字符if简介与空格的作用if处理的是逻辑表达式关系运算符针对数值字符串的关系运算符if自动转化Bool类型随机数if缺点且运算符或运算符取反运算符短路效应身份运算符运算符优先级结合性概览pass语句潜台词翻译系统None用途指令翻译系统嵌套嵌套与elif对比以及注意细节习题解答绘图作业与重点day4  语音合成与逻辑循环回顾语音合成简单理解while控制次数WhileElseWhileElse实战whileFloat回顾与ifelse表达式赌博概率分类设计方法-一元二次方程嵌套求有序3个数闰年计算矩形区域随机数ifelse回文数判断10进制转化16进制16进制转十进制暴力穷举无限循环指令循环同步异步黑科技读写内存读写内存无限循环监测重点与作业day5  复杂逻辑循环while与whileelse编程风格循环控制图形绘制while猜数字输入输出重定向while习题分析可以退出的命令系统for初步简介跑分流程结合for循环小结forfor嵌套forfor分析break中断循环contiune结束本次循环双层循环的break与continue分析break与contiue小结一闪一闪亮晶晶循环控制大小与位置对角线绘制圆形口顺时针运动循环等价作业与小结day6  函数实战回顾.算学费输入数据求最大精确划分思维解决最大次大交换数据实现按行显示围棋棋盘绘制国际象棋绘制为什么要用函数函数的四种类型函数的一般形式必须用函数的理由-哥德巴赫函数的本质就是地址函数变量意义函数变量用途装饰器设计模式包含模式函数概念None函数默认参数与返回值作为参数名称参数与位置参数参数副本机制副本练习多个返回值全局变量与局部变量函数内部引用全局变量函数可以嵌套nolocal处理函数嵌套变量函数nonlocalnonlocal总结开房数据查询day7      函数实战与常用数据结构函数的两种类型函数的本质再分析函数地址切换切换功能ifelse配合地址筛选函数收费函数调用过程函数基本小结return小结位置参数与默认参数混合参数填充混合填充错误情况lambda匿名函数可变长函数字符串常识普及字符串特点字符串不可以修改内部字符list列表list用途tuple简介集合运算字典概念in与notin运算符构造表达式转换数据类型系统小结拓展查询作业day8   字符串实战简单回顾eval与exec简介字符串的简单规范字符串的截取字符串赋值规范字符串转义字符字符串常见运算符字符串格式化字符串格式化强化字符串编码简介dir与help查看str字符串函数第一个大写以及字符串居中显示打印金字塔count统计字符串出现个数字符串编码注意事项解码失败判断字符串以什么为结束tab键转换find函数与rfind函数day9   字符串高级简单回顾..eval与exec简介字符串的简单规范字符串的截取字符串赋值规范字符串转义字符字符串常见运算符字符串格式化字符串格式化强化字符串编码简介dir与help查看str字符串函数第一个大写以及字符串居中显示打印金字塔count统计字符串出现个数字符串编码注意事项解码失败判断字符串以什么为结束tab键转换find函数与rfind函数index函数与rindex函数字符串判断字符串间隔求长度以及左右填充字符串大小写取出最大最小字符替换去除空格简单切割换行切割判断开头大小写切换以及填充0翻译表.字符串模板小结day10  字符串集合与语音识别实战回顾lset初始化风格set增加与去重set删除元素遍历set类型转化set无法操作单个元素的赋值set常见方法set常见运算符set关系运算符判断包含set集合判断frozenset字典的基本定义循环字典判断在不在实现插入与更新字典删除字典详解字典与set无法嵌套迭代器列表生成式生成器生成器节省内存用于循环生成器yield作用生成器简介测试游戏简介游戏初级修改键盘模拟语音控制游戏实现鼠标模拟代码规范函数简化重用列表与元组小结作业day11  阶段综合练习昨日回顾.堆栈函数模块引用系统模块引用与错误列表生成式的若干方法生成矩阵str与reprpython把输入输出设备当作文件处理写入中文写入英文读取中文读取英文读取错误写入错误处理文件缓存区文件读取若干种方式for循环按行读取数据文件指针seektell数据结构与文件的交互数据查询并保存结果数据查询小结与数据day12downwithoutdata  数据处理开发大数据指令数据清洗的概念初级数据清洗密码排序次数统计QQ密码概率分布QQ号码分类器.开房数据清洗..区域划分省份划分年龄月份划分日划分day12up  数据实战简单回顾12系统默认编码中文编码常见错误字符串切割抓取邮箱抓取用户名与密码排序密码文件统计次数排序.统计文件密码次数密码次数排序day13withoutdata  数据分类与list深入地区分类详解字典分类器数据简单归并数据如何切割数据加密数据解密指令执行判断文件夹编程小结列表归并-删除列表归并-下标小结与作业day14down   面向对象编程与深浅拷贝面向对象与过程的差异self用途动态绑定增加属性方法重载运算符的概念有名对象与匿名对象重载运算符的返回值重载运算符多个类型类的拷贝是浅复制深浅拷贝函数调用参数副本原理函数调用可以改变list的元素不可以改变list指向对象当作参数的细节私有变量私有变量用于设计权限私有方法用于设计权限私有变量本质用类的方式读取文件行数密码次数归并数据处理方法简介今日小结作业wmvday14up  暴力穷举与类回顾....排列组合暴力生成穷举密码密码破解必破生成器密码破解小结为啥使用类-代码重用类的一般形式详解self构造函数与析构函数构造函数初始化类的属性最简洁的UI设定窗体的位置以及大小类的实际用途day15down  面向对象数据搜索实战输入处理文本编辑器表格数据树状显示数据搜索可视化第一步实现查询窗体数据搜索可视化第二步实现搜索数据数据搜索可视化第三步实现显示窗体数据可视化第四步显示与搜索串联数据可视化终结作业小结day15up  面向对象设计与图像界面上设计一个类发短信类的方法设计一下短信发送邮件类的设计-设计发邮件类的多文件引用腾讯营销类的设计消息循环消息回掉函数机制lambda按下按钮标签显示文本文本输入框listcombobox选择列表day16up  面向对象与图形界面开发下设计一个类发短信类的方法设计一下短信发送邮件类的设计-设计发邮件类的多文件引用腾讯营销类的设计消息循环消息回掉函数机制lambda按下按钮标签显示文本文本输入框listcombobox选择列表day17  面向对象继承实战昨日小结.,.继承的概念多继承的概念多继承的覆盖私有变量不可以被继承Object类类的常见属性super解决父类重复初始化isinstance多态静态方法类方法数据工具1类的继承数据工具实现小结day18down  正则表达式正则表达式bB贪婪与非贪婪标签.标签解决提取标签名称提取QQ生成邮箱列表工具简单正则表达式编写常见的正则表达式复杂正则表达式编写复杂表达式代码验证作业与小结day18up 正则表达式实践为什么使用正则表达式正则表达式匹配.预编译的概念搜索技能搜索用在找出第一个邮箱手机提取findall字符串切割筛选正则表达式正则表达式替换单个字符判断中括号选择一个字符正则表达式次数正则开头结尾括号与选择正则表达式特殊符号day19down 递归与爬虫实战函数递归模拟文件树文件树事件读取网页抓取邮箱抓取QQ提取http抓取邮箱简单程序框架实现抓取邮箱的框架核心两个函数完成广度遍历深度遍历作.业day19up 深度遍历与广度遍历正则表达式小结最简单递归递归顺序递归求和递归腾讯台阶面试题文件夹的函数遍历文件夹遍历文件夹有层次感栈模拟递归栈模拟递归遍历文件夹栈模拟递归遍历文件夹层次感普及网站提取概念栈修改的逻辑错误广度遍历 day20 正则 爬虫实战行情简介提取页面信息提取股票代码提取股票代码下载功能下载股票批量下载股票抓取1页的股票数据抓取多个页面的股票抓取基金信息作业day21  网络编程与信息安全网络概念UDP协议UDP通信UDP远程控制TCP通信TCP控制测试网站后台网站密码破解作业 day22down  线程通信线程通信线程通信强化线程condition高级线程调度生产者消费者线程池延时线程with作用前台进程后台进程TLS线程独立存储作业day22up  多线程实战多线程核心目标并发主线程与小弟线程多线程解决加速多线程的加速线程冲突基于类实现多线程基于类实现多线程的顺序与乱序互斥锁解决线程冲突死锁-使用锁要注意Rlock解决一个线程反复加锁单线程死锁创建线程的三种风格信号量限制线程数量限定线程数量day23  多进程实战多线程回顾多进程拷贝代码多进程拷贝全局变量获取进程编号subprocess执行LinuxShell信号Linux进程小结__name__进程mutiprocessing创建过程join作用进程不可以用全局变量共享数据进程同步进程pipe发送接收数据进程队列进程队列传输数据进程共享数据进程之间共享数组进程共享字典与list简单小结day23down  多进程多线程综合实战读取CSV写入csv单线程统计行数多线程统计行数多进程统计行数多线程检索数据第一步多线程检索赵琳多线程检索找到通知其他人退出多线程检索开放数据并保存同一个文件作业day24up  多进程多线程综合实战多进程检索第一步多进程检索开房数据求平均市值多线程解决平均市值多进程统计平均市值单线程BFS抓取邮箱多线程并行抓取邮箱多线程采集邮箱并保存csv归并多线程归并文件day25down 文件格式处理doc处理系统处理doc与docx文件处理的小结读取并写入xls与xlsx读取网络pdf中文pdftelnet简介登陆Linux登陆Windows小结day25up  时间编程与单元测试时间的简单风格时间格式化抓取年月日计算时间差时间函数计算时间差date小结python2与3的差异内置函数筛选内置函数map内置的函数sorted新浪数据抓取实时文档测试单元测试函数单元测试一个类day26  综合实战播放音乐设置背景鬼程序协程简介协程传递数据wmv协程编号协程生产者消费者模式office自动化操作wordoffice办公自动化操作exceloffice办公自动化操作outlookoffice办公自动化access开发环境配置访问mdb格式访问accdb格式实现CGI程序显示页面环境变量cgi处理前后端day26down  破解wifi实战扫描wifi扫描网卡区分链接成功或者失败wifi密码爆破工具设计Linux破解简介day27down  飞机大战实战命令行下脱裤创建一个pygame窗体窗体加载背景图片处理消息飞机移动实现基本框架飞机框架飞机销毁双机对战双机对战加载子弹双机与敌机出现发射子弹day27up  数据库实战jython的安装MySQL简介数据库的一般操作MySQL数据类型数据表的创建于删除数据的查询数据的插入数据的删除数据的更新联合查询字段一致数据查询排序排序与分组join与nullmysql用python编程查询数据python数据库增删查改项目简介other  异常与错误综合练习异常与错误的概念作业tryexcept解决异常不出错继续执行密码破解工具进攻数据库爆破mysql异常else异常处理的标准公式弹出异常withas类中使用异常继承自定义异常断言密码工具设计三个独立的类密码工具2类链接3类密码工具1类链接3类密码工具分析作业speech   语音识别问题解决语音识别解决None
三个目的:1.go语言的基础彻底讲明白,所以我们要100讲2.课程持续更新-随着go的新版本、新特性 持续更新3.我们的文档希望能成为go语言的查询文档 目标:让大家尽快完整的掌握go基础 尽快为什么尽快,因为我看到过很多人的半途而费,这里面有毅力的成分但是其实我更想说,市面上的培训千篇一律,大家都在变着花的讲基础,把一个简单的事情用各种各样的不常用的方式讲述出来我认为这会伤害一个人的学习的积极性学习有一个很重要的一条规则是: 尽快的得到正反馈所以前几十节,我只会告诉你最实用的东西,目标只有一个,让你可以思路清晰的先把go用起来,得到正反馈,激发你对他的热爱课时会保持在20分钟以内,如果你真想在地铁上学习,可以选择看一节  完整我们的基础课程之所以做100讲,就是要把go语言基础讲清楚 比如我,10年专注于开发、架构,前百度资深开发工程师现任某金融集团技术总监,丰富的开发经验,熟悉go、python开发语言我们每天都在用go解决各种各样的问题,我们深度使用了prometheus、生产环境深度使用了K8s、Docker等我们也致力于用go完成所有工作  go语言100讲之后的课程规划我们会用去go围绕go生态k8s、prometheus去围绕redis、kafka、nacos、ftp、elk等一系列工具我们的目标是用go完成我们所遇到的绝大部分工作,所以我们不写类似于聊天室这种项目我们是一群开发人员、运维人开发员组成的团队,有架构师、程序员、资深运维开发、DBA、应用运维、运维总监、网络工程师等,几乎包括了生态的各个方面因为我们想做我们专长的事情
掌握分布式mapreduce与raft算法与分布式数据库MapReduce是一种编程模型,用于大规模数据集(大于1TB)的并行运算。概念Map(映射)和Reduce(归约),是它们的主要思想,都是从函数式编程语言里借来的,还有从矢量编程语言里借来的特性。它极大地方便了编程人员在不会分布式并行编程的情况下,将自己的程序运行在分布式系统上。 当前的软件实现是指定一个Map(映射)函数,用来把一组键值对映射成一组新的键值对,指定并发的Reduce(归约)函数,用来保证所有映射的键值对中的每一个共享相同的键组。MapReduce是面向大数据并行处理的计算模型、框架和平台,它隐含了以下三层含义:1)MapReduce是一个基于集群的高性能并行计算平台(Cluster Infrastructure)。它允许用市场上普通的商用服务器构成一个包含数十、数百至数千个节点的分布和并行计算集群。2)MapReduce是一个并行计算与运行软件框架(Software Framework)。它提供了一个庞大但设计精良的并行计算软件框架,能自动完成计算任务的并行化处理,自动划分计算数据和计算任务,在集群节点上自动分配和执行任务以及收集计算结果,将数据分布存储、数据通信、容错处理等并行计算涉及到的很多系统底层的复杂细节交由系统负责处理,大大减少了软件开发人员的负担。3)MapReduce是一个并行程序设计模型与方法(Programming Model & Methodology)。它借助于函数式程序设计语言Lisp的设计思想,提供了一种简便的并行程序设计方法,用Map和Reduce两个函数编程实现基本的并行计算任务,提供了抽象的操作和并行编程接口,以简单方便地完成大规模数据的编程和计算处理Raft 是一种为了管理复制日志的一致性算法。它提供了和 Paxos 算法相同的功能和性能,但是它的算法结构和 Paxos 不同,使得 Raft 算法更加容易理解并且更容易构建实际的系统。为了提升可理解性,Raft 将一致性算法分解成了几个关键模块,例如leader人选举、日志复制和安全性。同时它通过实施一个更强的一致性来减少需要考虑的状态的数量。从一个用户研究的结果可以证明,对于学生而言,Raft 算法比 Paxos 算法更加容易学习。Raft 算法还包括一个新的机制来允许集群成员的动态改变,它利用重叠的大多数来保证安全性。 一致性算法允许一组机器像一个整体一样工作,即使其中一些机器出现故障也能够继续工作下去。正因为如此,一致性算法在构建可信赖的大规模软件系统中扮演着重要的角色。在过去的 10 年里,Paxos 算法统治着一致性算法这一领域:绝大多数的实现都是基于 Paxos 或者受其影响。同时 Paxos 也成为了教学领域里讲解一致性问题时的示例。 但是不幸的是,尽管有很多工作都在尝试降低它的复杂性,但是 Paxos 算法依然十分难以理解。并且,Paxos 自身的算法结构需要进行大幅的修改才能够应用到实际的系统中。这些都导致了工业界和学术界都对 Paxos 算法感到十分头疼。 和 Paxos 算法进行过努力之后,我们开始寻找一种新的一致性算法,可以为构建实际的系统和教学提供更好的基础。我们的做法是不寻常的,我们的首要目标是可理解性:我们是否可以在实际系统中定义一个一致性算法,并且能够比 Paxos 算法以一种更加容易的方式来学习。此外,我们希望该算法方便系统构建者的直觉的发展。不仅一个算法能够工作很重要,而且能够显而易见的知道为什么能工作也很重要。 Raft 一致性算法就是这些工作的结果。在设计 Raft 算法的时候,我们使用一些特别的技巧来提升它的可理解性,包括算法分解(Raft 主要被分成了leader人选举,日志复制和安全三个模块)和减少状态机的状态(相对于 Paxos,Raft 减少了非确定性和服务器互相处于非一致性的方式)。一份针对两所大学 43 个学生的研究表明 Raft 明显比 Paxos 算法更加容易理解。在这些学生同时学习了这两种算法之后,和 Paxos 比起来,其中 33 个学生能够回答有关于 Raft 的问题。 Raft 算法在许多方面和现有的一致性算法都很相似(主要是 Oki 和 Liskov 的 Viewstamped Replication),但是它也有一些独特的特性: 强leader:和其他一致性算法相比,Raft 使用一种更强的leader能力形式。比如,日志条目只从leader发送给其他的服务器。这种方式简化了对复制日志的管理并且使得 Raft 算法更加易于理解。leader选举:Raft 算法使用一个随机计时器来选举leader。这种方式只是在任何一致性算法都必须实现的心跳机制上增加了一点机制。在解决冲突的时候会更加简单快捷。成员关系调整:Raft 使用一种共同一致的方法来处理集群成员变换的问
《Core Java》介绍和我的课程计划 李冰Email: bing.li@asu.eduWeChat: libertymama2021年4月15日 这是我第一次通过录屏的方式讲授主流程序设计技术。从今年二月底至今,我已经录制了105讲52.5小时的视频课程。通过这段时间的工作,我认为借助互联网强大的传播能力,这种新型教育方式完全具备超越传统实体模式的巨大优势,一定会成为未来教育的发展趋势。我会积极投入到这项事业当中,尽我所能提供更多高质量在线教学课程。 一、本课程内容 本课程将以Cay Horstmann的经典著作《Core Java》(第11版,2019年)为蓝本面向广大程序设计爱好者以及专业人员讲授基础Java程序设计技术。对于主流程序设计语言的教学,教材的选用对教学效果具有决定意义。我虽然有大量Java语言开发经验,但并没有时间和精力按照我自己的理解写一部教材。在这种情况下,不妨在现有资料中做出恰当选择。在长期Java程序开发过程中,我收集的各种Java程序设计书籍超过50部。它们包括基础技术、设计模式、并发技术、数据处理、网络通信、性能优化、代码测试以及高级技巧等多个方面。通过对这些书籍的比较,我认为《Core Java》是全面介绍Java技术的经典教材。它篇幅宏大,对Java标准版(Java Standard Edition – JSE)大大小小各种问题做了细致入微的介绍。对学习者来说,它无疑是众多介绍Java基础技术书籍中的最佳选择。 为了方便学习者掌握本书,我对全书内容进行了摘要并编纂成幻灯片。在这个准备过程中,即使作为拥有大量程序设计经验的我来说,我也发现了我对一些细节认识的模糊,有的甚至从来没有接触过。事实上,这些细节对于我们提高程序质量是大有裨益的。作为基础程序设计技术的经典之作,本书除了有翔实完整的描述外,还包括大量具有充分说服力的程序示例。这体现了计算机科学作为当代最重要的科学分支之一所独有的理性诉求。为了使学习者更深入了解每一项技术,我还额外增添了很多程序示例,更加丰富了本课程的内容。这些示例使得全书所有论述都是建立在代码支持的基础上,成为学习Java程序设计技术最坚实的保证。 还有一点我需要说明的是,作为本课程的主讲者,我并不是简单地照本宣科。根据我的研发和教学经验,对程序设计这样一门复杂技术来说,主讲者以往和当前所从事的研发工作对讲课质量有着至关重要的影响。我会把我在研发中的实际体会融入在整个讲课过程中。对所有重要技术,除了清晰阐述原作者观念以外,我会提供我个人的评价供学习者参考;同时,我还会收集其他资料作为辅助,使得对特定技术的解释更加充分。通过多角度的观察体验,促使学习者全面透彻理解Java语言。我认为这种个性多元的教学方式是帮助大家掌握程序设计的关键所在。 由于本书的庞大容量,我还没有足够时间完成全书的录制。我会坚持完成所有课程,估计在六月中会完成第一卷全部十二章内容;在八月底完成第二卷的录制。保守估计,完成后全部幻灯片页数会超过3,000页;程序示例个数超过700个;全部代码程序会超过15,000行;全部视频课程时长至少会达到150小时,即300讲。当前,我已经完成本书第一卷前五章和第六章部分内容的录制,现在共有105讲(52.5小时)的视频,幻灯片达到1,222页。其中包括212个程序示例,共5,130行代码。在完成本书的全部录制之后,本课程将成为国内全网范围内时间最长和内容最丰富的Java基础技术视频教材。 当然,《Core Java》这本书也有它的不足。在全面覆盖Java标准版的同时,对一些重点问题的介绍深度上有欠缺。这对于一部力图囊括所有Java基础技术的教材来说也在所难免。为了弥补这个不足,我将在其他课程中予以弥补。这些课程也同样是基于知名经典著作进行介绍。我的初步计划涉及的著作包括:Steven John Metker的《Design Patterns Java Workbook》、Brian Goetz等的《Java Concurrency In Practice》、Elliotte Rusty Harold的《Java Network Programming》、Charlie Hunt和Binu John的《Java Performance》、Ira Forman和Nate Forman的《Java Reflection in Action》以及Maurice Naftalin和Philip Wadler的《Java Generic and Collections》。另外,我还计划把最新出版的其他重要英文程序设计专著在不侵犯版权的前提下,以视频方式呈现给大家。 二、本课程的理念 一项事业一定会有它的理想。程序设计的理想当然是能够完成伟大软件作品。 我们虽然都会在现实中不得不做出一些妥协,但理想总是唯一能够激发我们最大创造力的催化剂,它同样是带给我们最大快乐的源泉。我们也许在不断降低曾经的理想维度,但我们也同时都会在人生每一个寂静时刻扪心自问深刻反省。那些对我们自己灵魂发出的询问,就是我们不会屈服的个性展示。换句话说,面对理想时,我们自始自终都有来自内在天赋的支持。 当然,除了我们的天赋,为了理想,我们同样需要付出巨大的劳动。这些劳动不仅仅是学习和研发过程的坚持,更多的还是抵御外在环境对我们理想意想不到的干扰。其实,无论是否有那些干扰,在外人看来艰辛的劳动对于拥有理想的我们永远是最大的快乐。 对于程序设计来说,我个人伴着理想和辛勤劳动走了很长的路。即使如此,我只能说我对程序设计略知一二,甚至对做出高质量程序的解决之道还有些迷惑了。但我的这些付出,至少使我坚信没有任何灵丹妙药可以实现所谓“在零基础上几日登天”,我也不认为这样做程序的人会真正快乐。事实上,理想只会离这种模式的程序设计更远。 三、我的经验 作为本课程的主讲者,我应该具备一些基本素质。我希望我的经验能够得到各位的认可。 我现有程序代码量达到1,300,000行,其中Java有950,000行,其他语言有350,000行。至少,我在我的人际圈内没有发现超过这个数目的人。 此时此刻,我还在进行两个重要软件项目的研发。第一个是《新万维网》。它是对传统万维网(WWW)的重大改进。当前版本持续开发超过十年,基础层已经建立,我正在努力修改新版界面。我认为这个产品在学术和市场两个方面都会有很好前景。这个项目现在拥有代码行数882,224。从这个角度看,很可能是我国学界最大的软件研究项目。 另一个项目是《GreatFree: 面向互联网环境的通用分布式程序设计技术》。通过我的大量对比,这是国际学界在互联网环境下第一个具备通用开发能力的程序设计技术。尽我所知,我国在程序设计领域的贡献很少,我的这个成果具备首创价值。我正在把它以新的语言形式展现出来。这应该是我国在计算机领域贡献的第一个程序设计语言。现有成果已经开源,大家可以从GitHub上找到,链接是:http://github.com/greatfree/wind。 我当前还在大学任教。我在国际知名企业也有一些工作和实习经验。我曾经工作和实习过的机构包括:北京大学、西安工业大学、IBM研究中心(纽约)和贝尔实验室(北京)等。我还曾在美国亚利桑那州立大学获得过计算机科学博士学位。 四、英文问题 本课程的教材和幻灯片全部使用英文。英文是科技领域的官方语言,所有最新科技成果都是以英文方式呈现的。随着互联网技术的广泛普及,通过网络我们可以轻易获得足够多的英文资料。这对提高我们的程序设计技术和能力有极大帮助。另外,我认为当前大学普遍存在专业教育和英文教育割裂的现象,这是非常荒唐的。对于母语非英文的人来说,通过英文学习专业是掌握英文最佳甚至是唯一可行的学习方式。英文对于程序设计的帮助是决定性的。寻找一个编程中具体问题的答案,英文搜索结果要远好于中文。对于程序设计人员,英文还有更特别的意义,毕竟程序是英文写的。英文差,完全会导致程序质量大幅下降。最后,我着重需要强调的是,英文能够培养一个人科学理性的思维能力,对提高程序质量有着潜移默化的推动作用。 我多年在大学的教学中一直采取以英文学习专业的方式。实践告诉我,这种方式是成功的,普遍受到学生欢迎。我在我任教过的大学总是最受欢迎的老师之一,这和我的英文教学方式分不开。另外,在我的视频课程中,我对每一张幻灯片都有详细的中文口语解释和大量的程序示例。我认为英文不仅不会影响学习质量,反而会促进对具体程序设计技术的理解,毕竟英文更能反映出技术的本质。相比于大量不精确的翻译书籍,我认为直接学习英文原著是最好的选择。与此同时,借助视频技术实现音像并茂,可以生动展示英文教学内容,一定对提高学习者能力有本质上的提高。我认为大家是会欢迎这种模式的。英文不是学习科技的障碍,恰恰相反,它是我们通向科技巅峰的桥梁。 五、可能的学习者 《Core Java》这本书虽然讨论的是基础Java技术,但它翔实全面的风格其实对每一个对程序设计技术感兴趣专业和非专业人士都会有价值。 第一,没有任何程序设计经验的初学者。相比于其他主流语言,Java是经过长期演化后形成的程序设计技术。Java彻底摆脱了早期机器语言的影响,不存在任何对于机器特征过分依赖的编程方式;Java和互联网技术结合得更加紧密,适合学习者初步掌握互联网开发技术;Java采用面向对象程序设计风格,这是当前被普遍接受和推荐的程序设计理念;还有,相比于其他语言,Java的程序呈现方式更加简化。正是由于上述原因,Java是初学者学习程序设计的恰当选择。 第二,需要全面了解Java技术的程序设计人员。根据我的经验,一个程序员完全掌握一门程序设计语言的所有细节是非常困难的,一般都会存在对某个分支或者部分细节缺乏了解的现象。本课程的全面性会帮助程序员查漏补缺,以较小代价对模糊不清的枝节问题进行了解,从而完善自身的程序设计技术,并迅速在实际研发过程中将所学体现出来。 第三,致力于从事基础软件系统开发的Java程序设计人员。本课程讲授的Java标准版是Java最重要的技术。事实上,Java所有的开发能力集中体现在标准版当中,而非其他任何版本(如Java Enterprise Edition – JEE),更不是其他众多架构(Frameworks)所能代替的。在实际开发中,由于Java标准版一些主要技术使用难度相对较大,很多开发人员会有意回避使用它,转而去借助各种架构进行开发,从而快速完成应用软件的建立。从软件工程角度看,这种做法无可厚非。这些架构不要求研发人员具备深厚的基础知识和技能,只需通过简单配置或者简化的脚本语言编程就可以完成高层应用软件开发。但是长此以往,这种做法会逐渐降低程序设计人员的技术能力。只通过架构开发应用的研发人员大都会失去开发复杂基础软件系统的能力。本课程讲授的Java标准版是Java核心技术,对这个技术的全面掌握是开发基础软件系统不可或缺的。 六、怎样掌握Java程序设计技术 事实上,我不认为只通过这个课程就可以真正掌握Java程序设计技术。这个认识对任何程序设计技术课程都是成立。作为一门需要高度实践经验的科学技术,程序设计课程或者书籍只能是辅助的和启发式的。我认为无论使用何种开发技术何种开发理念,真正决定程序质量的永远是人,而不是单独的某项技术。对于一个高水平的程序设计师来说,他完全可以使用相对落后的技术做出高质量的软件;而低水平的程序设计人员,无论使用任何先进工具都无法保证程序水准。因此,我在课堂上经常和学生们说,你们要坚持“每天编程序”。更重要的是,这个程序应该学生独立思考后设想出的一个软件,每天坚持逐步把它做出来。当这个软件达到特定规模时,设计者才会真正领悟到程序设计的核心价值、各种技术的科学理性意义乃至程序设计的乐趣。 最后,除了“每天编程序”,其实我在课堂上对学生还有一个建议,就是“每天读英文”。前两天,我在网上看到一篇文章。它展示了钱学森先生1933年6月在国立交通大学读书时参加《水力学》考试的试卷。我惊讶地发现这份试卷完全是英文作答。这意味着在遥远的八十八年前,我国大学已经开始使用英文进行专业教育了。遗憾的是,在当前我国主要大学里,竟然还做不到这点。我希望大家能够理解我对英文学习重要性的一再重复:在我们这个全新时代,在一个富有朝气的学科中以英文为蓝本展开自己的理想!  

28,391

社区成员

发帖
与我相关
我的任务
社区描述
ASP即Active Server Pages,是Microsoft公司开发的服务器端脚本环境。
社区管理员
  • ASP
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧