大家好,以下是咱们工业大学2019年技术学习小组的第二次活动记录及培训概要。
活动时间:2018年10月23日 TUE 19:50 – 21:55
本次内容
0. 前言
基础 – 技术 – 专业 – 职业 – 职责 – 事业 – 产业
大一 – 大二 – 大三 – 实习 – 转正 – 晋升 – 野心
1. 推荐
a. 书目 —— 《编程大师访谈录》《数学之美与浪潮之巅》
b. 百词斩,坚持背单词
2. C#: Hello, World!
a. 项目与解决方案的区别,Solution 与 Project
b. 最基本的命名规范
3. 编写:1 + 2 =? 如何运行,如何实现?
a. 计算机与程序的内在原理
b. $"Hello {value}" 格式化字符串与屏幕输出
4. 面向对象的程序设计(1)
a. People 类
i. 值类型与引用类型的区别
ii. 成员变量或成员方法
iii. Getter 与 Setter
class People { // 构造方法 public People(int birthYear, string gender) { if (birthYear < 1) { throw new Exception("不能这么玩!"); } this.Age = DateTime.Now.Year - birthYear; this.Gender = gender; this.IsHungry = true; } // 成员属性 public string Name { get; set; } public string Gender { get; set; } public int Age { get; } private bool IsHungry; // 成员方法 public void Eat() { this.IsHungry = false; } }
b. 封装 Number
i. Static 静态方法(类方法) 与 实例方法的区别
ii. 泛型
(a) 使用搜索引擎:查找关键词 add two generic value
(b) 推荐 <a href="https://stackoverflow.com/" rel="noopener noreferrer" target="_blank">StackOverflow.com</a> 这里有任何技术问题的答案
namespace ConsoleApp1 { using System; // 泛型类 class MyNumber<T> { public MyNumber(T number) { this.Number = number; } public T Number { get; set; } // 静态方法,不是成员(实例)方法,是类方法 public static MyNumber<T> Add(MyNumber<T> a, MyNumber<T> b) { dynamic x = a; dynamic y = b; return new MyNumber<T>(x.Number + y.Number); } // 运算符重载的实现 public static MyNumber<T> operator +(MyNumber<T> a, MyNumber<T> b) { return Add(a, b); } } class Program { private static void Main(string[] args) { // int a = 3; var a = new MyNumber<int>(3); // int b = 5; var b = new MyNumber<int>(5); var r = MyNumber<int>.Add(a, b); var x = new MyNumber<double>(3.1415); var y = new MyNumber<double>(6.28); var r2 = MyNumber<double>.Add(x, y); // 运算符重载 var r3 = a + b; Console.WriteLine(r.Number); Console.WriteLine(r2.Number); Console.WriteLine(r3.Number); Console.ReadKey(); } } }
本次作业
1. 在自己的机器上,使用 Visual Studio 2017,自己认真重新编写上述程序
2. 在自己的机器上,安装 JDK,用于下次的安卓培训
以上任务每个人都需要在下次培训前完成,完成后请告知齐亚楠,或张梦雪,或景彦红,或者我
以上操作如果有任何问题,请在群里直接提问!或者向任意大三学长咨询,希望咱们的技术群是活跃的!
如果在学习上有任何迷茫,可以随时找几位学长或者我聊一聊,如果觉得本活动并不适合自己,请随时主动退群,我们的活动未必适合每个人,急流勇退,志在四方,非常感谢!
下次的培训时间是本周四晚,请大家尽早完成任务,下次培训将由 杨挺(Tommy Yang) 学长,给大家带来 Android 开发概览,加油!