当前位置: 首页 > news >正文

在京高校大学生“准”程序员召集令(新发布上课时间及地点)

在京高校大学生 “准”程序员召集令

金旭亮

===============================

公布《面向对象方法与技术》上课时间及地点:

北京理工大学中关村校区中心教学楼425教室

04~17教学周每周二晚上第9~11节(即2011年3月22日至6月21日起的每周二晚上,18:40~21:30)

========================================

从2002年以来,我一直在北京理工大学讲授程序设计方面的课程,先后开设过《VB程序设计》、《.NET软件开发技术基础》、《Java技术与应用》、《面向对象方法与技术》几门课。按学院教学计划,如果没有太大变化,下学期将由我为计算机学院2008级同学讲授专业选修课《面向对象方法与技术》共40学时。
这学期我已经给计算机学院2008级同学讲授了《Java技术与应用》这门课,虽然有一半的学生给我的教学与考核方式“吓跑”了,但终究还是余下了二三十个“不怕难且坚持不退课”的“顽固”份子,其实大三学生的课业负担相当重,但这些同学不仅完成了对Java课程正式内容的学习,还抽出时间完成了在我看来质量还不错的课程设计,不少同学还在文档中提了不少好的建议和意见,谢谢同学们。
同学们的支持鼓励了我,下学期的《面向对象方法与技术》这门课,我就想我是不是能与同学们一道,探索更有效的软件技术学习与实践之路?
我从这次Java试卷 和同学们交上来的大作业中,看到大多数同学都已经对面向对象编程有了一定的理解与把握,那么,下学期的《面向对象方法与技术》这门课,我们就可以在一个比较高的起点出发,共同学习与探索更深入也更有趣的软件技术。
我虽然是学院Java课程的主讲教师,但我最擅长其实是C#编程语言和.NET平台,讲授这部分内容更有把握。因此,下学期的《面向对象方法与技术》这门课,我将向同学们重点讲授最新的.NET 4.0平台技术,希望能帮助同学们直接跟进到当前软件开发技术的前沿阵地。

此课程初步计划讲授内容如下:
(1)多线程与并行计算
(2)反射,MEF与插件系统开发
(3).NET平台数据库开发技术(ADO.NET、ADO.NET实体框架、数据绑定)
(4)经典网络应用程序开发:使用Socket的TCP/UDP网络应用程序
(5)SOA与分布式软件开发:重点介绍WCF技术及其应用
选用教材:
我写的《.NET 4.0面向对象编程漫谈 》,包括《基础篇》与《应用篇》两本,要求学生在上课前先自学《基础篇》中的内容,我上课将假设大家已经通过自学入了C#和.NET的大门,直接讲授位于《应用篇》中的上述(1)和(2)两部分内容。
第(3)部分和第(5)部分内容没有教材,但我将提供教学PPT以及大量的实例,并布置一些编程练习。同学们先通过听课把握技术要点,课后仔细阅读分析示例,并动手完成我所布置的一些编程练习,我觉得应该能比较快地掌握这些技术。
第(4)部分虽然也没有教材,但我将在个人博客上陆续发布《.NET 4.0网络开发入门之旅 》系列文章,循序渐进地介绍Socket编程。这些文章在一定程度上可以起到教材的作用。
仅仅学技术是不够的,关键在应用。
以下是我这门课的教学初步构想:
(1)这门课不考试,最终成绩由同学们提交作品的水平而定。
(2)同学们即可以“单干”,也可以两三个同学自由组合成一个精干的开发小组,在学完本课程之后,自选课题,自主开发,完成一个功能完备的软件系统。
(3)我已经向学院提出要求,把这门课安排在后半学期,我想这个要求应该会得到满足。这样一来,课讲完时,刚好是三周的小学期和插在中间的暑假,我想同学们应该有足够的时间去消化学到的技术,并且也有足够的时间与精力去开发自己的“伟大作品”。
如果同学们能切实掌握这门课所讲授的技术,那么,我觉得大家应该具备开发以下类型软件系统的能力:
(1)类似QQ的即时通讯软件(应用Socket编程技术)
(2)直接开发建构于TCP/IP协议之上,使用Socket开发的典型网络应用程序(比如文件服务器)
(3)P2P型应用软件,比如P2P的网络游戏,P2P的资源共享系统等
(4)典型的Web应用程序(比如开发一个类似于电子书店、新浪微博这样的Web系统)
(5)充分利用多核计算能力的并行程序和系统:比如基于.NET 4.0的任务并行库来设计一个高性能的计算机图形生成与图像处理程序,使用PLINQ处理大数据量的软件系统
(6)开发一个可动态更新、动态装卸的支持插件的系统,具有较高的可扩展性与可维护性。
(7)……
其实要做可做的东西太多了,就看同学们的创意和实践能力了。
另外我还有一个“想法”,不知道能不能实现:
诸位同学都是大三的学生了,即将到来的大四是你们在大学的最后一年,大多数同学都面临着两大挑战:一是找工作,一是考研。
我希望在我的帮助下,同学们能充分利用这大半年的时间,培养出必要的开发能力,开发出一个能代表自己最高水平的作品,并拿着它作为自己大四求职的“敲门砖”。
按照我的经验,凡是能在大学期间能主动探索、学习与实践的同学,凡是能拿出一个成形的软件作品证明自己实力的同学,很少会出现找不到工作、求职四处碰壁的情况。软件企业还是很愿意录用那些既有比较扎实的计算机理论功底、又有较强开发实践能力的学生的。
这样一来,诸位同学其实在大三结束就解决掉了就业问题,就占有了主动权:

想继续深造的同学在大四可以安下心来考研(因为你至少可以比较有把握地能找到一份工作),而想找工作的同学也会更有底气了,我相信你们能有更大的可能性到自己理想的公司就职。
如果诸位同学都能有好的发展,作为一名老师,我会很高兴的。 :)
为此,我在此发布一个“准程序员”召集令:
北理工2008级的同学,只要你有志于毕业后从事软件开发工作,只要你真的喜欢编程,那么请汇聚集到一起,看看我们师生共同努力,能不能探索出一条软件技术学习的新路,开发出有水平有创意的作品。
另外,我特别指出,不管你是不是北理工的学生,只要你的现实条件允许,而且愿意的话,非常欢迎在北京的其他兄弟院校的同学共同参与,和我们北理工的同学一道合作开发,共同探索精彩的软件世界!
强调一下:凡是想轻轻松松混学分的那部分“南郭先生”,请不要选修这门课,如果学生太多了,我就顾不过来了。另外那些想保研需要高分以确保年级排名的同学,选这门课也要慎重,我把话说在前头:这门课要想得高分,你得拿出实打实的作品出来,我只看你写出的程序,越有创意,程序越有职业水准,给的分就越高,我是不管你保研不保研的,所以你得想好了。
其他的想修这门课,给自己一个挑战的同学,请提前自学教材《.NET 4.0面向对象编程漫谈》之《基础篇》,把面向对象编程的基础给打牢了,并且熟练掌握C#编程语言,否则,等到上课时你可能会跟不上我讲课的进度,讲课所涉及到的技术都不是简单的,牵扯到你们所学的很多其他计算机专业课程(比如操作系统、软件工程、数据结构等)。

相关文章:

  •  D - 粉碎叛乱F - 其他起义
  • Ruby的GC机制源码分析(4)
  • 【随笔】android开发的学习路线
  • 第十章学习笔记总结
  • S3C2440-AD应用
  • 【JavaScript知识点七】 javascript 字符串函数
  • Molehill 3D APIs - GPU硬件加速的Flash 3D API
  • DirectX
  • maven学习讲解
  • 3D游戏引擎的基本架构
  • 思维的划分
  • APP交互
  • Android-播放视频简单案例
  • 近期的一些安排
  • Largest Rectangle in Histogram题解
  • 【跃迁之路】【444天】程序员高效学习方法论探索系列(实验阶段201-2018.04.25)...
  • Android Volley源码解析
  • Android组件 - 收藏集 - 掘金
  • CentOS 7 防火墙操作
  • Elasticsearch 参考指南(升级前重新索引)
  • Fastjson的基本使用方法大全
  • iOS帅气加载动画、通知视图、红包助手、引导页、导航栏、朋友圈、小游戏等效果源码...
  • Java 网络编程(2):UDP 的使用
  • linux学习笔记
  • MySQL主从复制读写分离及奇怪的问题
  • PHP变量
  • python大佬养成计划----difflib模块
  • XForms - 更强大的Form
  • 案例分享〡三拾众筹持续交付开发流程支撑创新业务
  • 初识MongoDB分片
  • 力扣(LeetCode)56
  • 聊聊hikari连接池的leakDetectionThreshold
  • 前端每日实战:70# 视频演示如何用纯 CSS 创作一只徘徊的果冻怪兽
  • 微服务入门【系列视频课程】
  • 小程序开发之路(一)
  • 走向全栈之MongoDB的使用
  • Java总结 - String - 这篇请使劲喷我
  • ###51单片机学习(1)-----单片机烧录软件的使用,以及如何建立一个工程项目
  • #图像处理
  • (九)信息融合方式简介
  • (论文阅读22/100)Learning a Deep Compact Image Representation for Visual Tracking
  • (转)Linux NTP配置详解 (Network Time Protocol)
  • (转)程序员技术练级攻略
  • (转)创业的注意事项
  • .bat批处理(五):遍历指定目录下资源文件并更新
  • .NET Framework 3.5中序列化成JSON数据及JSON数据的反序列化,以及jQuery的调用JSON
  • .NET 发展历程
  • .NET/C# 使用 #if 和 Conditional 特性来按条件编译代码的不同原理和适用场景
  • .Net中间语言BeforeFieldInit
  • @Data注解的作用
  • @font-face 用字体画图标
  • @RequestBody的使用
  • @Transaction注解失效的几种场景(附有示例代码)
  • [28期] lamp兄弟连28期学员手册,请大家务必看一下
  • [AIR] NativeExtension在IOS下的开发实例 --- IOS项目的创建 (一)