Difference between revisions of "User:John Dang"
(→About Me) |
m |
||
(161 intermediate revisions by 2 users not shown) | |||
Line 1: | Line 1: | ||
− | == | + | <table cellspacing="5" style="line-height: 1.5em; width: 22em; font-size: 95%; text-align: left; background-color: #F9F9F9; border: 1px solid #AAAAAA; color: black; float: right; margin: 0.5em 0 0.5em 1em; padding: 0.2em;"> |
+ | <tr><td style="font-weight: bold; text-align: center; font-size: 125%;" colspan="2"><b>John Dang</b></td></tr> | ||
+ | <tr><td style="padding: 4pt; line-height: 1.25em; text-align: center; font-size: 8pt;" colspan="2"><div> | ||
+ | </div></td></tr> | ||
+ | <tr> | ||
+ | <th style="padding: 0.2em 1em 0.2em 0.2em; background: transparent none repeat scroll 0% 0%; line-height: 1.2em; text-align: left; font-size: 90%;vertical-align: top;">Born</th> | ||
+ | <td class="" style="padding: 0.2em; line-height: 1.3em; vertical-align: middle; font-size: 90%;">February 15</td> | ||
+ | </tr> | ||
+ | <tr> | ||
+ | <th style="padding: 0.2em 1em 0.2em 0.2em; background: transparent none repeat scroll 0% 0%; line-height: 1.2em; text-align: left; font-size: 90%;vertical-align: top;">Occupation</th> | ||
+ | <td class="role" style="padding: 0.2em; line-height: 1.3em; vertical-align: middle; font-size: 90%;">BSD Student</td> | ||
+ | </tr> | ||
+ | <tr> | ||
+ | <th style="padding: 0.2em 1em 0.2em 0.2em; background: transparent none repeat scroll 0% 0%; line-height: 1.2em; text-align: left; font-size: 90%;vertical-align: top;">Expected Graduation</th> | ||
+ | <td class="" style="padding: 0.2em; line-height: 1.3em; vertical-align: middle; font-size: 90%;">2009</td> | ||
+ | </tr> | ||
+ | <tr> | ||
+ | <th style="padding: 0.2em 1em 0.2em 0.2em; background: transparent none repeat scroll 0% 0%; line-height: 1.2em; text-align: left; font-size: 90%;vertical-align: top;">Email</th> | ||
+ | <td class="" style="padding: 0.2em; line-height: 1.3em; vertical-align: middle; font-size: 90%;"> | ||
+ | [mailto:jqdang@learn.senecac.on.ca jqdang@learn.senecac.on.ca]</td> | ||
+ | </tr> | ||
+ | <tr> | ||
+ | <th style="padding: 0.2em 1em 0.2em 0.2em; background: transparent none repeat scroll 0% 0%; line-height: 1.2em; text-align: left; font-size: 90%;vertical-align: top;">Blog</th> | ||
+ | <td class="" style="padding: 0.2em; line-height: 1.3em; vertical-align: middle; font-size: 90%;">http://jdeport.wordpress.com/</td> | ||
+ | </tr> | ||
+ | </table> | ||
+ | <p> | ||
+ | '''John Dang''' is a [http://en.wikipedia.org/wiki/Software_Developer Software Developer]. He enrolled in the [http://warp.senecac.on.ca/bsd/ Bachelor of Software Development (BSD) Program] at [http://www.senecac.on.ca/ Seneca College] in the winter of 2006 and graduated from this program in 2009. | ||
+ | </p> | ||
+ | <p> | ||
+ | He was elected President of the [http://windowsclub.senecac.on.ca/ Seneca College School of Computer Studies Windows Club] for the school year 2008-2009. He implemented a structure that consisted of standards, procedures and guidelines to assist the club to plan, execute and evaluate events, and to manage and monitor member recruitment and activities. | ||
+ | </p> | ||
+ | <br /> | ||
+ | == Open Source Development == | ||
+ | <h3>DPS909 - Topics in Open Source Development</h3> | ||
+ | <dl style="margin-bottom:0.5em;margin-top:0.2em;line-height:1.5em;"><dd> | ||
+ | <i>Further information: [[DPS909]]</i> | ||
+ | </dl> | ||
+ | <p> | ||
+ | <h4><u>Course Schedule</u></h4> | ||
+ | <ul> | ||
+ | <li>[[DPS909 and OSD600 Winter 2009 Eclipse WTP Weekly Schedule]]</li> | ||
+ | </ul> | ||
+ | </p> | ||
+ | <p> | ||
+ | <h4><u>Helpful Web Tools Platform (WTP) Tutorials</u></h4> | ||
+ | <ol> | ||
+ | <li>[http://cs.senecac.on.ca/~jordan.anastasiade/Eclipse/WTP/0/WTP_Tutorial_1.html Using Eclipse to Develop WTP]</li> | ||
+ | <li>[http://www.eclipse.org/articles/Article-Your%20First%20Plug-in/YourFirstPlugin.html Your First Plug-In: Developing the Eclipse "Hello World" plug-in]</li> | ||
+ | <li>[http://www.vogella.de/articles/EclipsePlugIn/article.html Eclipse Plug-In Development]</li> | ||
+ | </ol> | ||
+ | </p> | ||
+ | <br /> | ||
− | + | <h3>DPS911 - Open Source Project</h3> | |
+ | <dl style="margin-bottom:0.5em;margin-top:0.2em;line-height:1.5em;"><dd> | ||
+ | <i>Further information: [[DPS911]]</i> | ||
+ | </dl> | ||
+ | <p> | ||
+ | <h4><u>Course Schedule</u></h4> | ||
+ | <ul> | ||
+ | <li>[[Summer_2009_DPS911-OSD700_Weekly_Schedule]]</li> | ||
+ | </ul> | ||
+ | </p> | ||
+ | <p> | ||
+ | <h4><u>Course Activities</u></h4> | ||
+ | </p> | ||
+ | {| class="sortable" cellpadding="5" cellspacing="0" border="1" | ||
+ | !<u>Week</u> | ||
+ | !<u>Date</u> | ||
+ | !<u>Activity</u> | ||
+ | !<u>Contribution</u> | ||
+ | |---- | ||
+ | !Week 1 | ||
+ | |May 11 | ||
+ | |<ul><li>Added personal information to [[Summer 2009 Eclipse WTP Student Team]]</li> | ||
+ | <li>Analyzed and reviewed bugs on [https://bugs.eclipse.org/bugs/ Bugzilla] for WTP</li></ul> | ||
+ | | | ||
+ | |---- | ||
+ | !Week 2 | ||
+ | |May 18 | ||
+ | |<ul><li>Downloaded and Extracted/Installed both Eclipse WTP RCP/Plug-in and WTP 3.1M7</li> | ||
+ | <li>Produced screencast for how to get Eclipse WTP working (Jordan's written tutorial)</li> | ||
+ | <li>Selected Eclipse WTP Bug #[https://bugs.eclipse.org/bugs/show_bug.cgi?id=241429 241429] for term project</li></ul> | ||
+ | |<ul><li>[http://b.static.ak.fbcdn.net/swf/mvp.swf?8%3A152716%3A1&v=83901541771&ev=0 Eclipse WTP - Downloading & Extracting/Installing] <em>beta</em></li><ul> | ||
+ | |---- | ||
+ | !Week 3 | ||
+ | |May 25 | ||
+ | |<ul><li>Gave a 5 minute presentation on my experience with creating a screencast (including tools used)</li> | ||
+ | <li>Gave a 15 minute presentation about Eclipse WTP Bug #241429</li><ul> | ||
+ | | | ||
+ | |---- | ||
+ | !Week 4 | ||
+ | |June 1 | ||
+ | |<ul><li>Attended other student presentations and offered valuable feedback</li><ul> | ||
+ | | | ||
+ | |---- | ||
+ | !Week 5 | ||
+ | |June 8 | ||
+ | |<em>N/A - away for work</em> | ||
+ | | | ||
+ | |---- | ||
+ | !Week 6 | ||
+ | |June 15 | ||
+ | |<ul><li>Worked on reproducing Eclipse WTP Bug #241429 with basic scenario</li> | ||
+ | <li>Worked on reproducing Eclipse WTP Bug #241429 with break-point scenario</li><ul> | ||
+ | | | ||
+ | |---- | ||
+ | !Week 7 | ||
+ | |June 22 | ||
+ | |<ul><li>Worked on producing screencast for reproducing Eclipse WTP Bug #241429 with basic and break-point scenario</li><ul> | ||
+ | | | ||
+ | |---- | ||
+ | !Week 8 | ||
+ | |June 29 | ||
+ | |<ul><li>Produced screencast for reproducing Eclipse WTP Bug #241429</li><ul> | ||
+ | |<ul><li>[http://www.facebook.com/v/98871186771 Eclipse WTP Bug #241429] <em>beta</em></li></ul> | ||
+ | |---- | ||
+ | !Week 9 | ||
+ | |July 6 | ||
+ | |<ul><li>Worked on reproducing Eclipse WTP Bug #241429 with Thread.sleep method</li><ul> | ||
+ | | | ||
+ | |---- | ||
+ | !Week 10 | ||
+ | |July 13 | ||
+ | |<ul><li>Propose two theoretical solution for Eclipse WTP Bug # 241429 (quartz job scheduling, message/disable button)</li> | ||
+ | <li>Give a 10 minute presentation on current project status</li><ul> | ||
+ | | | ||
+ | |---- | ||
+ | !Week 11 | ||
+ | |July 20 | ||
+ | |<ul><li>Worked on creating Lab 1 - How to Create Your Seneca Wiki Page <em>[beta]</em></li><ul> | ||
+ | | | ||
+ | |---- | ||
+ | !Week 12 | ||
+ | |July 27 | ||
+ | |<ul><li>Worked on creating Lab 2 - How to Create Your Blog Page (WordPress) <em>[beta]</em></li><ul> | ||
+ | | | ||
+ | |---- | ||
+ | !Week 13 | ||
+ | |August 3 | ||
+ | |<ul><li>Worked on creating Lab 3 - How to Get Help on IRC <em>[beta]</em></li><ul> | ||
+ | | | ||
+ | |---- | ||
+ | !Week 14 | ||
+ | |August 10 | ||
+ | |<ul><li>Finalized written Lab 1, Lab 2, Lab 3</li><ul> | ||
+ | |<ul><li>[http://jdeport.wordpress.com/open-source-labs/open-source-seneca/lab-1-how-to-create-your-seneca-wiki-page/http://jdeport.wordpress.com/open-source-labs/open-source-seneca/lab-1-how-to-create-your-seneca-wiki-page/ Open Source @ Seneca Lab 1]</li><li>[http://jdeport.wordpress.com/open-source-labs/open-source-seneca/lab-2-how-to-create-your-blog-page-wordpress/ Open Source @ Seneca Lab 2]</li><li>[http://jdeport.wordpress.com/open-source-labs/open-source-seneca/lab-3-how-to-get-help-on-irc/ Open Source @ Seneca Lab 3]</li></ul> | ||
− | + | |---- | |
+ | !Week 15 | ||
+ | |August 17 | ||
+ | |<ul><li>Give a 20 minute presentation on work status and contributions</li><ul> | ||
+ | | | ||
+ | |} | ||
+ | <br /> | ||
− | == | + | == Open Source Contribution == |
+ | <h3>Open Source @ Seneca</h3> | ||
+ | <dl style="margin-bottom:0.5em;margin-top:0.2em;line-height:1.5em;"><dd> | ||
+ | <i>Further information: [[Main_Page]]</i> | ||
+ | </dl> | ||
+ | <p> | ||
+ | <h4><u>Pages Added</u></h4> | ||
+ | <ul><li>User:John_Dang (this page)</li></ul> | ||
+ | </p> | ||
+ | <p> | ||
+ | <h4><u>Pages Updated</u></h4> | ||
+ | <ul><li>[[User:JAnastasiade]] | ||
+ | <ul> | ||
+ | <li>implemented a Wikipedia User structure template</li> | ||
+ | <li>added a very brief introduction to user</li> | ||
+ | <li>added user online community information</li> | ||
+ | <li>added user image</li> | ||
+ | </ul> | ||
+ | </li></ul> | ||
+ | <ul><li>[[User:Fardad]] | ||
+ | <ul> | ||
+ | <li>implemented a Wikipedia User structure template</li> | ||
+ | <li>added a very brief introduction to user</li> | ||
+ | <li>added user online community information</li> | ||
+ | <li>added user image</li> | ||
+ | </ul> | ||
+ | </li></ul> | ||
+ | </p> | ||
+ | <br /> | ||
− | + | == Apple Development == | |
− | + | <h3>DPS913 - Foundations of Apple Application Development</h3> | |
+ | <dl style="margin-bottom:0.5em;margin-top:0.2em;line-height:1.5em;"><dd> | ||
+ | <i>Further information: [http://warp.senecac.on.ca/peter/dps913/default.aspx DPS913A.STSY.20091]</i> | ||
+ | </dl> | ||
+ | <h4><u>Apple Mac OS X v10.5.6</u></h4> | ||
+ | <h5>Keyboard Shortcuts</h5> | ||
+ | {| class="sortable" cellpadding="5" cellspacing="0" border="1" style="margin:0 40px 0 40px; width: 500px; text-align: left; table-layout: fixed;" | ||
+ | !<u>Action</u> | ||
+ | !<u>Mac OSX</u> | ||
+ | |---- | ||
+ | !Exit Dialog | ||
+ | |ctrl + eject | ||
+ | |---- | ||
+ | !Quit All Applications and Restart | ||
+ | |⌘ + ctrl + eject | ||
+ | |---- | ||
+ | !Sleep | ||
+ | |⌘ + opt + eject | ||
+ | |---- | ||
+ | !Force Quit | ||
+ | |opt + ⌘ + esc | ||
+ | |---- | ||
+ | !Log Out | ||
+ | |⇧ + ⌘ + Q | ||
+ | |---- | ||
+ | !Log Out Immediately | ||
+ | |opt + ⇧ + ⌘ + Q | ||
+ | |---- | ||
+ | !Move to Trash | ||
+ | |⌘ + Del | ||
+ | |---- | ||
+ | !Empty Trash | ||
+ | |⇧ + ⌘ + Del | ||
+ | |---- | ||
+ | !Empty Trash with No Dialog | ||
+ | |opt + ⇧ + ⌘ + del | ||
+ | |---- | ||
+ | !Eject | ||
+ | |⌘ + E | ||
+ | |---- | ||
+ | !Right-Click | ||
+ | |ctrl + Click | ||
+ | |---- | ||
+ | !Spotlight | ||
+ | |⌘ + spacebar | ||
+ | |---- | ||
+ | !Find | ||
+ | |⌘ + F | ||
+ | |---- | ||
+ | !Hide Find | ||
+ | |⌘ + H | ||
+ | |---- | ||
+ | !Hide Others | ||
+ | |opt + ⌘ + H | ||
+ | |---- | ||
+ | !Hide All Windows Except Current Window | ||
+ | |opt + ⌘ + H | ||
+ | |---- | ||
+ | !Minimize Window | ||
+ | |⌘ + M | ||
+ | |---- | ||
+ | !Minimize All Windows | ||
+ | |opt + ⌘ + M | ||
+ | |---- | ||
+ | !Close Window | ||
+ | |⌘ + W | ||
+ | |---- | ||
+ | !Close All Window | ||
+ | |opt + ⌘ + W | ||
+ | |---- | ||
+ | !New | ||
+ | |⌘ + N | ||
+ | |---- | ||
+ | !Open | ||
+ | |⌘ + O | ||
+ | |---- | ||
+ | !Save | ||
+ | |⌘ + S | ||
+ | |---- | ||
+ | !Save As | ||
+ | |⇧ + ⌘ + S | ||
+ | |---- | ||
+ | !Print | ||
+ | |⌘ + P | ||
+ | |---- | ||
+ | !Get Info | ||
+ | |⌘ + I | ||
+ | |---- | ||
+ | !Add to Favorite/Sidebar | ||
+ | |⌘ + T | ||
+ | |---- | ||
+ | !Undo | ||
+ | |⌘ + Z | ||
+ | |---- | ||
+ | !Redo | ||
+ | |⇧ + ⌘ + Z | ||
+ | |---- | ||
+ | !Cut | ||
+ | |⌘ + X | ||
+ | |---- | ||
+ | !Copy | ||
+ | |⌘ + C | ||
+ | |---- | ||
+ | !Paste | ||
+ | |⌘ + V | ||
+ | |---- | ||
+ | !Select All | ||
+ | |⌘ + A | ||
+ | |---- | ||
+ | !View as Icons | ||
+ | |⌘ + 1 | ||
+ | |---- | ||
+ | !Hide Toolbar | ||
+ | |⌘ + B | ||
+ | |---- | ||
+ | !Show View Options | ||
+ | |⌘ + J | ||
+ | |---- | ||
+ | !Back | ||
+ | |⌘ + [ | ||
+ | |---- | ||
+ | !Forward | ||
+ | |⌘ + ] | ||
+ | |---- | ||
+ | !Go to My Computer | ||
+ | |⇧ + ⌘ + C | ||
+ | |---- | ||
+ | !Go to iDisk | ||
+ | |⇧ + ⌘ + I | ||
+ | |---- | ||
+ | !Go to Applications | ||
+ | |⇧ + ⌘ + A | ||
+ | |---- | ||
+ | !Go to Favorites | ||
+ | |⇧ + ⌘ + F | ||
+ | |---- | ||
+ | !Go to Folder | ||
+ | |⇧ + ⌘ + G | ||
+ | |---- | ||
+ | !Connect to Server | ||
+ | |⌘ + K | ||
+ | |---- | ||
+ | !Turn on Zoom | ||
+ | |opt + ⌘ + 8 | ||
+ | |---- | ||
+ | !Zoom In | ||
+ | |opt + ⌘ + '+' | ||
+ | |---- | ||
+ | !Zoom Out | ||
+ | |opt + ⌘ + '-' | ||
+ | |---- | ||
+ | !Negative View | ||
+ | |ctrl + opt + ⌘ + 8 | ||
+ | |---- | ||
+ | !FKA - Turn on Full Keyboard Access | ||
+ | |ctrl + F1 | ||
+ | |---- | ||
+ | !FKA - Highlight Menu | ||
+ | |ctrl + F2 | ||
+ | |---- | ||
+ | !FKA - Highlight Dock | ||
+ | |ctrl + F3 | ||
+ | |---- | ||
+ | !FKA - Highlight Window/Next Window | ||
+ | |ctrl + F4 | ||
+ | |---- | ||
+ | !FKA - Highlight Toolbar | ||
+ | |ctrl + F5 | ||
+ | |---- | ||
+ | !FKA - Highlight Utility Window | ||
+ | |ctrl + F6 | ||
+ | |---- | ||
+ | !Show/Hide Dock | ||
+ | |opt + ⌘ + D | ||
+ | |---- | ||
+ | !Switch Application | ||
+ | |⌘ + tab | ||
+ | |---- | ||
+ | !Turn VoiceOver on/off | ||
+ | |⌘ + F5 | ||
+ | |---- | ||
+ | !VoiceOver Menu | ||
+ | |ctrl + opt + F7 | ||
+ | |---- | ||
+ | !VoiceOver Option UtilityProxy-Connection: keep-alive | ||
+ | Cache-Control: max-age=0 | ||
+ | |||
+ | |ctrl + opt + F8 | ||
+ | |---- | ||
+ | !Take Picture of Screen | ||
+ | |⇧ + ⌘ + 3 | ||
+ | |---- | ||
+ | !Take Picture of Selection | ||
+ | |⇧ + ⌘ + 4 | ||
+ | |---- | ||
+ | !Take Picture of Screen to Clipboard | ||
+ | |⇧ + ⌘ + 4, ctrl + select | ||
+ | |---- | ||
+ | !Take Picture of Selected Window | ||
+ | |⇧ + ⌘ + 4, spacebar | ||
+ | |} | ||
+ | <br /> | ||
+ | <h4><u>Objective-C</u></h4> | ||
+ | <dl style="margin-bottom:0.5em;margin-top:0.2em;line-height:1.5em;"><dd> | ||
+ | <i>Further information: [http://en.wikipedia.org/wiki/Objective-c Objective-C]</i> | ||
+ | </dl> | ||
+ | <h5>String Format</h5> | ||
+ | {| class="sortable" cellpadding="5" cellspacing="0" border="1" style="margin:0 40px 0 40px; width: 500px; text-align: left; table-layout: fixed;" | ||
+ | !<u>Symbol</u> | ||
+ | !<u>Display</u> | ||
+ | |---- | ||
+ | !%@ | ||
+ | |id | ||
+ | |---- | ||
+ | !%% | ||
+ | |a % character | ||
+ | |---- | ||
+ | !%c | ||
+ | |unsigned char as ASCII | ||
+ | |---- | ||
+ | !%C | ||
+ | |unichar as Unicode | ||
+ | |---- | ||
+ | !%d, %D, %i | ||
+ | |long | ||
+ | |---- | ||
+ | !%e, %E, %f, %g, %G | ||
+ | |double | ||
+ | |---- | ||
+ | !%hi | ||
+ | |short | ||
+ | |---- | ||
+ | !%hu | ||
+ | |unsigned short | ||
+ | |---- | ||
+ | !%o, %O | ||
+ | |unsigned long printed as octal | ||
+ | |---- | ||
+ | !%p | ||
+ | |void * | ||
+ | |---- | ||
+ | !%qi | ||
+ | |long long | ||
+ | |---- | ||
+ | !%qu | ||
+ | |unsigned long long | ||
+ | |---- | ||
+ | !%s | ||
+ | |char * | ||
+ | |---- | ||
+ | !%S | ||
+ | |unichar * | ||
+ | |---- | ||
+ | !%u, %U | ||
+ | |unsigned long | ||
+ | |---- | ||
+ | !%x, %X | ||
+ | |unsigned long printed as hexadecimal | ||
+ | |} | ||
+ | <br /> | ||
+ | <h5>String Conversion between NSString and C strings</h5> | ||
+ | |||
+ | <span style="color:#6600FF;">NSString</span> *nsstr; | ||
+ | <span style="color:#6600FF;">const char</span> *cstr = <span style="color:#CC0000;">"Open Source!"</span>; | ||
+ | |||
+ | <span style="color:#336633;">// Convert a C string to a NSString</span> | ||
+ | nsstr = [<span style="color:#6600FF;">NSString</span> <span style="color:#660099;">stringWithUTF8String</span>:cstr]; | ||
+ | |||
+ | <span style="color:#336633;">// Convert a NSString to a C string</span> | ||
+ | cstr = [nsstr <span style="color:#660099;">UTF8String</span>]; | ||
+ | |||
+ | <br /> | ||
+ | <h5>Automatically Called Methods</h5> | ||
+ | <ul> | ||
+ | <li>[http://developer.apple.com/documentation/Cocoa/Reference/ApplicationKit/Protocols/NSNibAwaking_Protocol/Reference/Reference.html <i>(void)awakeFromNib</i>]</li> | ||
+ | </ul> | ||
+ | <br /> | ||
+ | <h5>Essential Objects and Their Commonly Used Methods</h5> | ||
+ | <h6>[http://developer.apple.com/documentation/Cocoa/Reference/Foundation/Protocols/NSObject_Protocol/Reference/NSObject.html NSObject]</h6> | ||
+ | <ul> | ||
+ | <li>'''''- (id)init'''''</li> | ||
+ | |||
+ | <span style="color:#6600FF;">NSObject</span> *newNSObject = [[<span style="color:#6600FF;">NSObject</span> <span style="color:#660099;">alloc</span>] <span style="color:#660099;">init</span>]; | ||
+ | |||
+ | <li>'''''- (NSString *)description'''''</li> | ||
+ | |||
+ | <span style="color:#660099;">NSLog</span>(<span style="color:#CC0000;">@"Open Source Account Number: %d is %@"</span>, i, accountToPrint); | ||
+ | |||
+ | is equivalent to | ||
+ | |||
+ | <span style="color:#660099;">NSLog</span>(<span style="color:#CC0000;">@"Open Source Account Number: %d is %@"</span>, i, [accountToPrint <span style="color:#660099;">description</span>]); | ||
+ | |||
+ | <li>'''''- (BOOL)isEqual:(id)that'''''</li> | ||
+ | |||
+ | <span style="color:#336633;">// compares the logic written in the isEqual methods</span> | ||
+ | if ([this <span style="color:#660099;">isEqual</span>:that]) { ... } | ||
+ | |||
+ | may not be equivalent to | ||
+ | |||
+ | <span style="color:#336633;">// compares the values of the two pointers</span> | ||
+ | this == that; | ||
+ | |||
+ | </ul> | ||
+ | <h6>[http://developer.apple.com/documentation/Cocoa/Reference/Foundation/Classes/NSArray_Class/Reference/Reference.html NSArray]</h6> | ||
+ | <ul> | ||
+ | <li>'''''- (NSUInteger)count'''''</li> | ||
+ | |||
+ | <span style="color:#6600FF;">NSArray</span> *nsarray = [<span style="color:#6600FF;">NSArray</span> <span style="color:#660099;">initWithObjects</span>:<span style="color:#CC0000;">@"Open Source!"</span>, nil]; | ||
+ | |||
+ | <span style="color:#6600FF;">NSUInteger</span> *count; | ||
+ | count = [nsarray <span style="color:#660099;">count</span>]; | ||
+ | |||
+ | <li>'''''- (id)objectAtIndex:(NSUInteger)index'''''</li> | ||
+ | |||
+ | <span style="color:#6600FF;">NSArray</span> *nsarray = [<span style="color:#6600FF;">NSArray</span> <span style="color:#660099;">initWithObjects</span>:<span style="color:#CC0000;">@"Open Source!"</span>, nil]; | ||
+ | |||
+ | <span style="color:#6600FF;">NSObject</span> *nsobject = [nsarray <span style="color:#660099;">objectAtIndex</span>:0]; | ||
+ | |||
+ | <li>'''''- (id)lastObject'''''</li> | ||
+ | |||
+ | <span style="color:#6600FF;">NSArray</span> *nsarray = [<span style="color:#6600FF;">NSArray</span> <span style="color:#660099;">initWithObjects</span>:<span style="color:#CC0000;">@"Open Source!"</span>, nil]; | ||
+ | |||
+ | <span style="color:#6600FF;">NSObject</span> *nsobject = [nsarray <span style="color:#660099;">lastObject</span>]; | ||
+ | |||
+ | <li>'''''- (BOOL)containsObject:(id)that'''''</li> | ||
+ | |||
+ | if ([this <span style="color:#660099;">containsObject</span>:that]) { ... } | ||
+ | |||
+ | <li>'''''- (NSUInteger)indexOfObject:(id)that'''''</li> | ||
+ | |||
+ | <span style="color:#6600FF;">NSArray</span> *nsarray = [<span style="color:#6600FF;">NSArray</span> <span style="color:#660099;">initWithObjects</span>:<span style="color:#CC0000;">@"Open Source!"</span>, nil]; | ||
+ | |||
+ | <span style="color:#6600FF;">NSUInteger</span> *index; | ||
+ | index = [nsarray <span style="color:#660099;">indexOfObject</span>:<span style="color:#CC0000;">@"Open Source!"</span>]; | ||
+ | |||
+ | </ul> | ||
+ | <h6>[http://developer.apple.com/documentation/Cocoa/Reference/Foundation/Classes/NSMutableArray_Class/Reference/Reference.html NSMutableArray]</h6> | ||
+ | <ul> | ||
+ | <li>'''''- (void)addObject:(id)that'''''</li> | ||
+ | |||
+ | <span style="color:#6600FF;">NSMutableArray</span> *nsmarray = [<span style="color:#6600FF;">NSMutableArray</span> <span style="color:#660099;">initWithObjects</span>:<span style="color:#CC0000;">@"Open Source!"</span>, nil]; | ||
+ | |||
+ | [nsmarray <span style="color:#660099;">addObject</span>:<span style="color:#CC0000;">@"Open Mind!"</span>]; | ||
+ | |||
+ | <li>'''''- (void)addObjectFromArray:(NSArray *)that'''''</li> | ||
+ | |||
+ | <span style="color:#6600FF;">NSMutableArray</span> *nmsarray = [<span style="color:#6600FF;">NSMutableArray</span> <span style="color:#660099;">initWithObjects</span>:<span style="color:#CC0000;">@"Open Source!"</span>, nil]; | ||
+ | <span style="color:#6600FF;">NSArray</span> *nsarray = [<span style="color:#6600FF;">NSArray</span> <span style="color:#660099;">initWithObjects</span>:<span style="color:#CC0000;">@"Open Mind!"</span>, nil]; | ||
+ | |||
+ | [nsmarray <span style="color:#660099;">addObjectFromArray</span>:nsarray]; | ||
+ | |||
+ | <li>'''''- (void)insertObject:(id)that atIndex:(NSUInteger)index'''''</li> | ||
+ | |||
+ | <span style="color:#6600FF;">NSMutableArray</span> *nsmarray = [<span style="color:#6600FF;">NSMutableArray</span> <span style="color:#660099;">initWithObjects</span>:<span style="color:#CC0000;">@"Open Source!"</span>, nil]; | ||
+ | |||
+ | [nsmarray <span style="color:#660099;">insertObject</span>:<span style="color:#CC0000;">@"Open Mind!"</span> <span style="color:#660099;">atIndex</span>:1]; | ||
+ | |||
+ | <li>'''''- (void)removeAllObjects'''''</li> | ||
+ | |||
+ | <span style="color:#6600FF;">NSMutableArray</span> *nsmarray = [<span style="color:#6600FF;">NSMutableArray</span> <span style="color:#660099;">initWithObjects</span>:<span style="color:#CC0000;">@"Open Source!"</span>, nil]; | ||
+ | [nsmarray <span style="color:#660099;">addObject</span>:<span style="color:#CC0000;">@"Open Mind!"</span>]; | ||
+ | |||
+ | [nsmarray <span style="color:#660099;">removeAllObjects</span>]; | ||
+ | |||
+ | <li>'''''- (void)removeObject:(id)that'''''</li> | ||
+ | |||
+ | <span style="color:#6600FF;">NSMutableArray</span> *nsmarray = [<span style="color:#6600FF;">NSMutableArray</span> <span style="color:#660099;">initWithObjects</span>:<span style="color:#CC0000;">@"Open Source!"</span>, nil]; | ||
+ | [nsmarray <span style="color:#660099;">addObject</span>:<span style="color:#CC0000;">@"Open Mind!"</span>]; | ||
+ | |||
+ | [nsamrray <span style="color:#660099;">removeObject</span>:<span style="color:#CC0000;">@"Open Source!"</span>]; | ||
+ | |||
+ | <li>'''''- (void)removeObjectAtIndex:(NSUInteger)index'''''</li> | ||
+ | |||
+ | <span style="color:#6600FF;">NSMutableArray</span> *nsmarray = [<span style="color:#6600FF;">NSMutableArray</span> <span style="color:#660099;">initWithObjects</span>:<span style="color:#CC0000;">@"Open Source!"</span>, nil]; | ||
+ | [nsmarray <span style="color:#660099;">addObject</span>:<span style="color:#CC0000;">@"Open Mind!"</span>]; | ||
+ | |||
+ | [nsmarray <span style="color:#660099;">removeObjectAtIndex</span>:0]; | ||
+ | |||
+ | </ul> | ||
+ | <h6>[http://developer.apple.com/documentation/Cocoa/Reference/Foundation/Classes/NSString_Class/Reference/NSString.html NSString]</h6> | ||
+ | <ul> | ||
+ | <li>'''''- (id)initWithFormat:(NSString *)format, ...'''''</li> | ||
+ | |||
+ | <span style="color:#6600FF;">NSString</span> *nsstring = [<span style="color:#6600FF;">NSString</span> <span style="color:#660099;">initWithFormat</span>:<span style="color:#CC0000;">@"Open %@!"</span>, <span style="color:#CC0000;">@"Source"</span>]; | ||
+ | |||
+ | <li>'''''- (NSUInteger)length'''''</li> | ||
+ | |||
+ | <span style="color:#6600FF;">NSString</span> *nsstring = <span style="color:#CC0000;">@"Open Source!"</span>; | ||
+ | |||
+ | <span style="color:#6600FF;">NSUInteger</span> *length; | ||
+ | length = [nsstring <span style="color:#660099;">length</span>]; | ||
+ | |||
+ | <li>'''''- (NSString *)stringByAppendingString:(NSString *)that'''''</li> | ||
+ | |||
+ | <span style="color:#6600FF;">NSString</span> *nsstring1 = <span style="color:#CC0000;">@"Open"</span>; | ||
+ | <span style="color:#6600FF;">NSString</span> *nsstring2 = <span style="color:#CC0000;">@" Source!"</span>; | ||
+ | |||
+ | <span style="color:#6600FF;">NSString</span> *nsnewstring; | ||
+ | nsnewstring = [nsstring1 <span style="color:#660099;">stringByAppendingString</span>:nsstring2]; | ||
+ | |||
+ | </ul> | ||
+ | <br /> | ||
+ | <h4><u>Apple Xcode v3.1.2</u></h4> | ||
+ | <h5>Keyboard Shortcuts</h5> | ||
+ | {| class="sortable" cellpadding="5" cellspacing="0" border="1" style="margin:0 40px 0 40px; width: 500px; text-align: left; table-layout: fixed;" | ||
+ | !<u>Action</u> | ||
+ | !<u>Mac OSX</u> | ||
+ | |---- | ||
+ | !Build and Go (Run) | ||
+ | |⌘ + return | ||
+ | |---- | ||
+ | !Display Console Window | ||
+ | |⇧ + ⌘ + R | ||
+ | |---- | ||
+ | !Clear Console Messages | ||
+ | |ctrl + opt + ⌘ + R | ||
+ | |---- | ||
+ | !Display Documentation Help | ||
+ | |opt + double-click + method | ||
+ | |---- | ||
+ | !Display Preferences Window | ||
+ | |⌘ + , | ||
+ | |---- | ||
+ | !Switching Between .h and .m Files | ||
+ | |opt + ⌘ + up | ||
+ | |} | ||
+ | <br /> | ||
+ | <h4><u>Apple Interface Builder v3.1.2</u></h4> | ||
+ | <h5>Keyboard Shortcuts</h5> | ||
+ | {| class="sortable" cellpadding="5" cellspacing="0" border="1" style="margin:0 40px 0 40px; width: 500px; text-align: left; table-layout: fixed;" | ||
+ | !<u>Action</u> | ||
+ | !<u>Mac OSX</u> | ||
+ | |---- | ||
+ | !Display Inspector Window | ||
+ | |⇧ + ⌘ + I | ||
+ | |---- | ||
+ | !Display Preferences Window | ||
+ | |⌘ + , | ||
+ | |} | ||
+ | <br /> | ||
+ | |||
+ | == References == | ||
+ | <br /> | ||
+ | == External links == | ||
+ | <h3>Eclipse WTP</h3> | ||
+ | <ul> | ||
+ | <li> | ||
+ | [https://bugs.eclipse.org/bugs/report.cgi?x_axis_field=priority&y_axis_field=product&z_axis_field=bug_severity&query_format=report-table&short_desc_type=allwordssubstr&short_desc=&classification=WebTools&product=WTP+Common+Tools&product=WTP+ServerTools&product=WTP+Source+Editing&product=WTP+Webservices&long_desc_type=allwordssubstr&long_desc=&bug_file_loc_type=allwordssubstr&bug_file_loc=&status_whiteboard_type=allwordssubstr&status_whiteboard=&keywords_type=allwords&keywords=&bug_status=NEW&bug_status=REOPENED&bug_severity=major&bug_severity=normal&bug_severity=minor&bug_severity=trivial&priority=P2&priority=P3&priority=P4&priority=P5&emailtype1=substring&email1=&emailtype2=substring&email2=&bugidtype=include&bug_id=&votes=&chfieldfrom=&chfieldto=Now&chfieldvalue=&format=table&action=wrap&field0-0-0=assigned_to&type0-0-0=regexp&value0-0-0=.@ca.ibm.com&field0-0-1=noop&type0-0-1=noop&value0-0-1= Eclipse WTP Bug List] | ||
+ | </li> | ||
+ | <li> | ||
+ | [http://cs.senecac.on.ca/~jordan.anastasiade/ Jordan Anastasiade's Course Website] | ||
+ | </li> | ||
+ | </ul> | ||
+ | <h3>Installing Mac OS X on a Windows PC</h3> | ||
+ | <ul> | ||
+ | <li> | ||
+ | http://pcwizcomputer.com/index.php?Itemid=48&id=76&option=com_content&task=view | ||
+ | </li> | ||
+ | <li> | ||
+ | http://www.windowsdevcenter.com/pub/a/windows/2005/01/18/PearPC.html | ||
+ | </li> | ||
+ | <li> | ||
+ | http://wiki.osx86project.org/wiki/index.php/Vmware_how_to - [Tested (2009/01/18): '''Works'''] | ||
+ | </li> | ||
+ | <li> | ||
+ | http://www.insanelymac.com/forum/index.php?showtopic=109102 - My "OS Test" Disk Identifier: "disk0s3" [-v rd=disk0s3] | ||
+ | </li> | ||
+ | </ul> | ||
+ | <h3>Understanding the Corporate Hierarchy</h3> | ||
+ | <ul> | ||
+ | <li> | ||
+ | http://answers.google.com/answers/threadview/id/77749.html | ||
+ | </li> | ||
+ | </ul> |
Latest revision as of 13:18, 30 August 2009
John Dang | |
Born | February 15 |
---|---|
Occupation | BSD Student |
Expected Graduation | 2009 |
jqdang@learn.senecac.on.ca | |
Blog | http://jdeport.wordpress.com/ |
John Dang is a Software Developer. He enrolled in the Bachelor of Software Development (BSD) Program at Seneca College in the winter of 2006 and graduated from this program in 2009.
He was elected President of the Seneca College School of Computer Studies Windows Club for the school year 2008-2009. He implemented a structure that consisted of standards, procedures and guidelines to assist the club to plan, execute and evaluate events, and to manage and monitor member recruitment and activities.
Contents
Open Source Development
DPS909 - Topics in Open Source Development
- Further information: DPS909
Course Schedule
Helpful Web Tools Platform (WTP) Tutorials
- Using Eclipse to Develop WTP
- Your First Plug-In: Developing the Eclipse "Hello World" plug-in
- Eclipse Plug-In Development
DPS911 - Open Source Project
- Further information: DPS911
Course Schedule
Course Activities
Week | Date | Activity | Contribution |
---|---|---|---|
Week 1 | May 11 |
|
|
Week 2 | May 18 |
|
|
Week 3 | May 25 |
|
|
Week 4 | June 1 |
|
|
Week 5 | June 8 | N/A - away for work | |
Week 6 | June 15 |
|
|
Week 7 | June 22 |
|
|
Week 8 | June 29 |
|
|
Week 9 | July 6 |
|
|
Week 10 | July 13 |
|
|
Week 11 | July 20 |
|
|
Week 12 | July 27 |
|
|
Week 13 | August 3 |
|
|
Week 14 | August 10 |
|
|
Week 15 | August 17 |
|
Open Source Contribution
Open Source @ Seneca
- Further information: Main_Page
Pages Added
- User:John_Dang (this page)
Pages Updated
- User:JAnastasiade
- implemented a Wikipedia User structure template
- added a very brief introduction to user
- added user online community information
- added user image
- User:Fardad
- implemented a Wikipedia User structure template
- added a very brief introduction to user
- added user online community information
- added user image
Apple Development
DPS913 - Foundations of Apple Application Development
- Further information: DPS913A.STSY.20091
Apple Mac OS X v10.5.6
Keyboard Shortcuts
Action | Mac OSX |
---|---|
Exit Dialog | ctrl + eject |
Quit All Applications and Restart | ⌘ + ctrl + eject |
Sleep | ⌘ + opt + eject |
Force Quit | opt + ⌘ + esc |
Log Out | ⇧ + ⌘ + Q |
Log Out Immediately | opt + ⇧ + ⌘ + Q |
Move to Trash | ⌘ + Del |
Empty Trash | ⇧ + ⌘ + Del |
Empty Trash with No Dialog | opt + ⇧ + ⌘ + del |
Eject | ⌘ + E |
Right-Click | ctrl + Click |
Spotlight | ⌘ + spacebar |
Find | ⌘ + F |
Hide Find | ⌘ + H |
Hide Others | opt + ⌘ + H |
Hide All Windows Except Current Window | opt + ⌘ + H |
Minimize Window | ⌘ + M |
Minimize All Windows | opt + ⌘ + M |
Close Window | ⌘ + W |
Close All Window | opt + ⌘ + W |
New | ⌘ + N |
Open | ⌘ + O |
Save | ⌘ + S |
Save As | ⇧ + ⌘ + S |
⌘ + P | |
Get Info | ⌘ + I |
Add to Favorite/Sidebar | ⌘ + T |
Undo | ⌘ + Z |
Redo | ⇧ + ⌘ + Z |
Cut | ⌘ + X |
Copy | ⌘ + C |
Paste | ⌘ + V |
Select All | ⌘ + A |
View as Icons | ⌘ + 1 |
Hide Toolbar | ⌘ + B |
Show View Options | ⌘ + J |
Back | ⌘ + [ |
Forward | ⌘ + ] |
Go to My Computer | ⇧ + ⌘ + C |
Go to iDisk | ⇧ + ⌘ + I |
Go to Applications | ⇧ + ⌘ + A |
Go to Favorites | ⇧ + ⌘ + F |
Go to Folder | ⇧ + ⌘ + G |
Connect to Server | ⌘ + K |
Turn on Zoom | opt + ⌘ + 8 |
Zoom In | opt + ⌘ + '+' |
Zoom Out | opt + ⌘ + '-' |
Negative View | ctrl + opt + ⌘ + 8 |
FKA - Turn on Full Keyboard Access | ctrl + F1 |
FKA - Highlight Menu | ctrl + F2 |
FKA - Highlight Dock | ctrl + F3 |
FKA - Highlight Window/Next Window | ctrl + F4 |
FKA - Highlight Toolbar | ctrl + F5 |
FKA - Highlight Utility Window | ctrl + F6 |
Show/Hide Dock | opt + ⌘ + D |
Switch Application | ⌘ + tab |
Turn VoiceOver on/off | ⌘ + F5 |
VoiceOver Menu | ctrl + opt + F7 |
VoiceOver Option UtilityProxy-Connection: keep-alive
Cache-Control: max-age=0 |
ctrl + opt + F8 |
Take Picture of Screen | ⇧ + ⌘ + 3 |
Take Picture of Selection | ⇧ + ⌘ + 4 |
Take Picture of Screen to Clipboard | ⇧ + ⌘ + 4, ctrl + select |
Take Picture of Selected Window | ⇧ + ⌘ + 4, spacebar |
Objective-C
- Further information: Objective-C
String Format
Symbol | Display |
---|---|
%@ | id |
%% | a % character |
%c | unsigned char as ASCII |
%C | unichar as Unicode |
%d, %D, %i | long |
%e, %E, %f, %g, %G | double |
%hi | short |
%hu | unsigned short |
%o, %O | unsigned long printed as octal |
%p | void * |
%qi | long long |
%qu | unsigned long long |
%s | char * |
%S | unichar * |
%u, %U | unsigned long |
%x, %X | unsigned long printed as hexadecimal |
String Conversion between NSString and C strings
NSString *nsstr; const char *cstr = "Open Source!"; // Convert a C string to a NSString nsstr = [NSString stringWithUTF8String:cstr]; // Convert a NSString to a C string cstr = [nsstr UTF8String];
Automatically Called Methods
Essential Objects and Their Commonly Used Methods
NSObject
- - (id)init
NSObject *newNSObject = [[NSObject alloc] init];
NSLog(@"Open Source Account Number: %d is %@", i, accountToPrint);
is equivalent to
NSLog(@"Open Source Account Number: %d is %@", i, [accountToPrint description]);
// compares the logic written in the isEqual methods if ([this isEqual:that]) { ... }
may not be equivalent to
// compares the values of the two pointers
this == that;
NSArray
- - (NSUInteger)count
NSArray *nsarray = [NSArray initWithObjects:@"Open Source!", nil]; NSUInteger *count; count = [nsarray count];
NSArray *nsarray = [NSArray initWithObjects:@"Open Source!", nil]; NSObject *nsobject = [nsarray objectAtIndex:0];
NSArray *nsarray = [NSArray initWithObjects:@"Open Source!", nil]; NSObject *nsobject = [nsarray lastObject];
if ([this containsObject:that]) { ... }
NSArray *nsarray = [NSArray initWithObjects:@"Open Source!", nil]; NSUInteger *index; index = [nsarray indexOfObject:@"Open Source!"];
NSMutableArray
- - (void)addObject:(id)that
NSMutableArray *nsmarray = [NSMutableArray initWithObjects:@"Open Source!", nil]; [nsmarray addObject:@"Open Mind!"];
NSMutableArray *nmsarray = [NSMutableArray initWithObjects:@"Open Source!", nil]; NSArray *nsarray = [NSArray initWithObjects:@"Open Mind!", nil]; [nsmarray addObjectFromArray:nsarray];
NSMutableArray *nsmarray = [NSMutableArray initWithObjects:@"Open Source!", nil]; [nsmarray insertObject:@"Open Mind!" atIndex:1];
NSMutableArray *nsmarray = [NSMutableArray initWithObjects:@"Open Source!", nil]; [nsmarray addObject:@"Open Mind!"]; [nsmarray removeAllObjects];
NSMutableArray *nsmarray = [NSMutableArray initWithObjects:@"Open Source!", nil]; [nsmarray addObject:@"Open Mind!"]; [nsamrray removeObject:@"Open Source!"];
NSMutableArray *nsmarray = [NSMutableArray initWithObjects:@"Open Source!", nil]; [nsmarray addObject:@"Open Mind!"]; [nsmarray removeObjectAtIndex:0];
NSString
- - (id)initWithFormat:(NSString *)format, ...
NSString *nsstring = [NSString initWithFormat:@"Open %@!", @"Source"];
NSString *nsstring = @"Open Source!"; NSUInteger *length; length = [nsstring length];
NSString *nsstring1 = @"Open"; NSString *nsstring2 = @" Source!"; NSString *nsnewstring; nsnewstring = [nsstring1 stringByAppendingString:nsstring2];
Apple Xcode v3.1.2
Keyboard Shortcuts
Action | Mac OSX |
---|---|
Build and Go (Run) | ⌘ + return |
Display Console Window | ⇧ + ⌘ + R |
Clear Console Messages | ctrl + opt + ⌘ + R |
Display Documentation Help | opt + double-click + method |
Display Preferences Window | ⌘ + , |
Switching Between .h and .m Files | opt + ⌘ + up |
Apple Interface Builder v3.1.2
Keyboard Shortcuts
Action | Mac OSX |
---|---|
Display Inspector Window | ⇧ + ⌘ + I |
Display Preferences Window | ⌘ + , |
References
External links
Eclipse WTP
Installing Mac OS X on a Windows PC
- http://pcwizcomputer.com/index.php?Itemid=48&id=76&option=com_content&task=view
- http://www.windowsdevcenter.com/pub/a/windows/2005/01/18/PearPC.html
- http://wiki.osx86project.org/wiki/index.php/Vmware_how_to - [Tested (2009/01/18): Works]
- http://www.insanelymac.com/forum/index.php?showtopic=109102 - My "OS Test" Disk Identifier: "disk0s3" [-v rd=disk0s3]