210099 程式設計 (Programming)

Programming Environment

Tips for Visual C++ 2008

  1. Tools - Options - Text Editor - C++
  2. Help source choices can be changed in the Options dialog box under /Help/Online.
  3. Comments a block of code: Ctrl+K Ctrl+C.
  4. Uncomments a block of code: Ctrl+K Ctrl+U.
  5. Reformat a block of code: Ctrl+K Ctrl+F
  6. Project Properties (Alt-F7) - C/C++ - Preprocessor - Preprocessor Definition

課程評量方式:

How will your programming assignments be evaluated

Syllabus


Topic Quiz Homework Weekly Reading
Week 1 2/19 Chapter 7: Classes
2/22 Midterm Exam (1)

HW1: Define a class CCircle New report details the prices within the cybercrime market
Who are the hackers?
How Hacking, `Phishing' Works video
Google Science Fair
What most schools don't teach video (Code.org video)
Week 2 2/26 Chapter 7: Constructors
3/1 no class

HW2: Constructors
20 highest radiation phones
Let's teach kids to code video
Week 3 3/5 Chapter 8: Destructor
3/8 Chapter 8: Operator Overloading
Quiz 1
Quiz 2
HW3: Define a Class CRational
HW4: Operator Overloading
Steamed: Valve Software Battles Video-game Cheaters
Week 4 3/12 Chapter 8: Native C++ Library Classes for Strings
String Manipulation using the CString class
3/15 File Processing using the fstream class
Quiz 3
HW5: String
HW6: Debug Ex8_14.cpp
How to measure Windows 7 memory usage
Week 5 3/19 #define, #include
#define - C and C++ Syntax Reference
Preprocessor directives - C++ Documentation
Building on the Command Line
Walkthrough: Compiling a Native C++ Program on the Command Line (C++)
<iostream> vs. <iostream.h>
3/22 Load a binary file (e.g. .WAV) into memory
Quiz 4
Quiz 5
HW7: fstream
HW8: Spreadsheet (1)
UK teenager jailed for not disclosing password
After 11n: The Future of Wireless Home Networking
Week 6 3/26 Midterm Exam (2)
3/27 春季健行
3/29 no class

HW10: Multitasking 閱讀心得
15 Windows Utilities You Can't Live Without
Multitasking
Week 7 4/2 Spring Vacation

HW9: Spreadsheet (2) - Numbers should be right-aligned The next 5,000 days of the webvideo
How to Build a Website
How to Download and Watch Free Movies Online Legally
Week 8 4/9 The Last Samuraivideo
4/12 Chapter 9: Class Inheritance
Quiz 6
Quiz 7
HW11: 末代武士觀看心得
HW12: Exercise 9-4 (P.640)
Your Guide to Windows 7
Week 9 4/16 Network ProgrammingPowerPoint with NetLink Sockets C++
4/19 Chapter 9: Virtual Functions
Quiz 8
Quiz 9
HW13: Linked List
HW14: Linked List (2)
Five reasons why Windows 8 has failed
Why Windows 8 Has Been Slow to Capture Consumer Mindshare
Simon Sinek: How great leaders inspire actionvideo

Week 10 4/23 Exercise
4/26 Chapter 10: The Standard Template Library

HW18: Sherry Turkle: Connected, but alone? 心得 Sherry Turkle: Connected, but alone?video
RFC 1855 - Netiquette Guidelines
Week 11 4/30Chapter 14: Windows Programming with the Microsoft Foundation Classes
5/3 Chapter 16: Drawing in a Window
Quiz 10
HW15: Drawing a Star
HW16: Colorful Bricks
HW17: Drawing Your National Flags
John Underkoffler points to the future of UIvideo
TED blends animation with education at new website
Multi-core has made it to cell phones
Week 12 5/7 Midterm Exam (3)
5/10  Chapter 13: Programming for Multiple Cores



The Sound of Rainingvideo
Analyst's View: PDF - Pretty Dangerous Format?
Week 13 5/14 Chapter 15: Working with Menus and Toolbars
Partially finished sketcher-ch15.zip
5/17
Quiz 11 HW19: Menu Items for Bar Chart and Line Chart
10 Tips to Become a Better Presentervideo
The Mobile Phone in Developing Nations
SSD vs HDD: What's the Difference?
Week 14 5/21 Display BITMAP filesPowerPoint 5/24 Chapter 18: Working with Dialogs and Controls
Quiz 12


MIT Creates Amazing UI From Levitating Orbs
ZeroN - Levitated Interaction Element video
Week 15 5/28 Edit Box
5/31 Tutorial to MFC Controls 



MIT's Oxygen Project
Week 16 6/4 List Box
6/7 Enable a Button; Using Radio Buttons
Quiz 13
Quiz 14

Computer Program Spots Fake Product Reviews
Dream Job: Nights at the Opera
Week 17 6/11 Final Exam


Tech world preps to honor 'Father of Computer Science' Alan Turing, as centenary nears
第六感驚人的潛 力 Pranav Mistryvideo
Week 18 6/21 Second Chance


NTT DoCoMo Vision (1)
NTT DoCoMo Vision (2) [wmv]
NTT DOCOMO Mobile Futurevideo

References

  1. Windows Sockets in MFC, MSDN Socket Class , TcpListener Class
  2. Using .NET Sockets - O'Reilly Media
  3. Stack Overflow - C++ sockets library for cross-platform
    1. NetLink Sockets C++
  4. Programming Windows TCP Sockets in C++ for the Beginner , Beej's Guide to Network Programming Using Internet Sockets
  5. Google Talk API
  6. Facebook C++ API
  7. Skype4COM, C++ Skype Desktop API

  8. C++ Sample Code
  9. C++ FAQ , C++ FAQ Lite
  10. Hot Interview Question - C++ (Constructor)
  11. GUI (Windows) Programming
  12. Instructor Companion
  13. cflow
  14. GNU GLOBAL source code tag system
  15. GLOBAL Related Tools
  16. Doxygen
  17. Free Disassembler
  18. 教育部資訊軟體人才培育先導計畫
  19. Code Library - Free Source Code and Program Tips
  20. Open Source Code Search Engine - Black Duck Koders
  21. CoderSource C Tutorials
  22. SourceInside
  23. Symphony
    1. Mozart - Symphony No. 35 in D, K. 385 [complete] (Haffner) 莫札特在結尾時加入木管,營造出超越個體累加的整體效果。
    2. Beethoven - Symphony No. 9
    3. Mahler Symphony No 4 G major
    4. Tchaikovsky - 1812 Overture 找一張收錄真實教堂鐘聲和砲聲的版本--傾聽各種聲音如何相互融合為一
    5. Haydn Symphony No 94 G major "Surprise" 想真正掌握「整合」的能力,必須學會接受意外驚奇。 聆聽時,注意海頓如何運用突如其來的音響,增加曲子的深度廣度。
  24. Stanford-blueprint: Bringing Web Search into the Development Environment (YouTube, PDF)
  25. Pentominoes
    1. Chapter 2 - Two-Dimensional Combinatorial Puzzles
    2. Pentominos - Mathematische Basteleien
    3. Pentominoes - a Puzzle
    4. Pentominoes (a.k.a Polyominoes) www.cs.brandeis.edu
    5. Pentominos - Puzzles & Computer (Nederlands)
    6. A program to solve Chocolate Puzzles - softark.net