Who Am I? <ul><li>Eung Sophy
MIS, NUM 2006
Software developer @ Mango and Yoolk
ungsophy.wordpress.com </li></ul>
More than programming!
?
Programming Languages <ul><li>Scala
Python
VB, VB.net
C, C++
C#
Erlang
Ruby
JavaScript
VBScript
Pascal </li></ul><ul><li>Groovy
PHP
Java
Smalltalk
F#
Objective-C
Upcoming SlideShare
Loading in …5
×

More than Programming!

408 views

Published on

Published in: Technology
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
408
On SlideShare
0
From Embeds
0
Number of Embeds
3
Actions
Shares
0
Downloads
6
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

More than Programming!

  1. 1. Who Am I? <ul><li>Eung Sophy
  2. 2. MIS, NUM 2006
  3. 3. Software developer @ Mango and Yoolk
  4. 4. ungsophy.wordpress.com </li></ul>
  5. 5. More than programming!
  6. 6. ?
  7. 7. Programming Languages <ul><li>Scala
  8. 8. Python
  9. 9. VB, VB.net
  10. 10. C, C++
  11. 11. C#
  12. 12. Erlang
  13. 13. Ruby
  14. 14. JavaScript
  15. 15. VBScript
  16. 16. Pascal </li></ul><ul><li>Groovy
  17. 17. PHP
  18. 18. Java
  19. 19. Smalltalk
  20. 20. F#
  21. 21. Objective-C
  22. 22. Perl
  23. 23. Delphi
  24. 24. ....... </li></ul>
  25. 25. ?
  26. 26. No one is the best , but all are good . Use the right tool for the right job !
  27. 27. What you should learn <ul><li>Object-oriented programming
  28. 28. Design patterns
  29. 29. Good practices </li></ul>
  30. 30. Design Patterns <ul><li>Reusable solution to a commonly occurring problem
  31. 31. wikipedia.org </li></ul>
  32. 32. Design Patterns <ul><li>Factory
  33. 33. Bridge
  34. 34. Composite
  35. 35. Facade
  36. 36. Adapter
  37. 37. Decorator
  38. 38. Flyweight </li></ul><ul><li>Proxy
  39. 39. Observer
  40. 40. Command
  41. 41. Chain of Responsibility
  42. 42. Singleton
  43. 43. ... </li></ul>
  44. 44. Demo on Design Patters
  45. 45. Good Practices <ul><li>Version of Control
  46. 46. Testing
  47. 47. Refactoring </li></ul>
  48. 48. Testing <ul><li>Unit test
  49. 49. Functional / Integration test
  50. 50. Scenario test </li></ul>
  51. 51. <ul><li>Unit testing is a software verification and validation method in which a programmer tests if individual units of source code are fit for use . </li></ul>wikipedia.org Unit test
  52. 52. A B C D E E F H
  53. 53. Demo on Unit Test
  54. 54. Refactoring <ul><li>The process of changing a software system in such a way that it does not alter the external behavior of the code, yet improves its internal structure . </li></ul>Fowler, et al., Refactoring, 1999.
  55. 55. Advantages of Refactoring <ul><li>Unreadable code
  56. 56. Duplicate code
  57. 57. Complex code
  58. 58. Hard to modify
  59. 59. ... </li></ul><ul><li>Easier to understand
  60. 60. Clean code
  61. 61. Better code
  62. 62. Cheaper to modify
  63. 63. ... </li></ul>
  64. 64. Demo of Refactoring
  65. 65. Red Refactor Green
  66. 66. “ A journey of a thousand miles begins with a single step.” Lao-tzu
  67. 67. អរគុណ ! http://forum.sharevisionteam.org

×