VisualStudio λ Microsoft μμ κ°λ°ν Windowsμ© IDE νκ²½μ΄λ€. μ΄ νκ²½μμλ Visual C++, Visual Basic, Visual C# λ± μ¬λ¬ μΈμ΄μ κ°λ°νκ²½μ΄ ν¨κ»νλ©°, μ΅μ λ²μ μ Visual Studio 2012μ΄λ€.
μ°ν ¶
- 1998.06 Visual Studio 6.0
- 2002.02 Visual Studio .Net
- 2005.11 Visual Studio 2005
- 2007.11 Visual Studio 2008
- 2010.04 Visual Studio 2010
- 2012.09 Visual Studio 2012
DeleteMe) .net 2005 λ°λ§€κΈ°λ λκ·λͺ¨ νμ¬(μ€λͺ , μμ°, μΈλ―Έλ)κ° μμ μ μμ΅λλ€. μ¬μ μ μ²μ λ°λκ΅°μ. 11μμλ νμ€ν λμ¬λ―.
νκ΅μμλ 2008λ
κΉμ§λ§ ν΄λ Visual C++ 6.0μ λ§μ΄ μ¬μ©νμΌλ 2008λ
2νκΈ°μ νλ³μ° κ΅μλμ΄ Visual Studio 2008 μ¬μ©μ κΆν κ²μ κ³κΈ°λ‘ μ΅μ λ²μ νκ²½μ΄ κ°μΆμ΄μ‘λ€.
VisualC++ 6.0μ VS.NET κ³μ΄μ λΉνμ¬ μλμ μΌλ‘ λ²κ·Έκ° λ§λ€. κ°λ IntelliSense κΈ°λ₯μ΄ μλ λκ° λ§μΌλ©° ν΄λμ€λ·°λ κΉ¨μ§κ³ , μ 체 μ¬ μ»΄νμΌμ νμλ‘νλ μν©λ λ§μ΄ λ°μνλ€. ( νΉμ, Debug Modeμμ λμκ°λ€κ°, Release Modeμμ λμκ°μ§ μλ κ²½μ°λ μλλ° λ³΄ν΅ μ΄λ νλ‘κ·Έλ¨μμ μ€μ νλ°μ΄λ€. κ·Έλ¬λ κ°νΉ λμ μ΅μ νλ‘ μΈν΄ λμκ°μ§ μμλλ μμ μ μλ€. )
VisualStudio λ₯Ό μ¬μ©ν λ μ΄κΈ° νλ‘κ·Έλλ° λ°°μΈλ μ΅νλμ΄μΌ ν κΈ°λ₯λ€λ‘, Debugger μ¬μ©, Profiling, Goto Definition
Bug ¶
Class View κ° μλμ¬λ ¶
IntelliSense κΈ°λ₯μ΄ μ λλ‘ μλνμ§ μμλ ¶
μΌλ¨ νλ‘μ νΈλ₯Ό λ«λλ€. μΌλ¨ xxx.ncb νμΌμ μμ ν΄μ€ λ€ λ€μ νλ‘μ νΈλ₯Ό μ΄μ΄μ€λ€.
VisualAssist λ₯Ό μ¬μ©νλ€λ©΄, Code Re-Parsing κΈ°λ₯μ μ€νν΄μ€λ€.
pragma once ¶
C++ μμλ μλ°μμμ import μ λͺ
λ Ήκ³Ό λ¬λ¦¬ ν΄λΉ ν€λνμΌμ λν pre-processor μ κΈ°λ₯μΌλ‘μ 'include' λ₯Ό νλ€. κ·Έλ¬λ€ 보λ ν΄λΉ ν΄λμ€λ ν¨μ λ±μ redefinition λ¬Έμ κ° λ°μνλ€. μ΄λ₯Ό λ°©μ§νλ λ°©λ²μΌλ‘ νλλ #ifndef - #endif λ±μ λͺ
λ Ήμ μ°λκ²μ΄κ³ νλλ pragma once μ΄λ€.
λ€μμ μμ λ₯Ό μ°Έμ‘°.
~cpp #ifndef _CBOARDBASE_H_ // _CBOARDBASE_H_ κ° preprocessor λ‘ μ μΈλμ§ μμμ κ²½μ° μΆκ°λλ€. #define _CBOARDBASE_H_ class CBoardBase { protected: CBoardBase(); void initBoard(); . . #endifμ΄λ λ€μκ³Ό κ°μ΄ νν κ°λ₯νλ€.
~cpp #pragma once class CBoardBase { protected: CBoardBase(); void initBoard(); . .λ¨, pragma μ μ²λ¦¬κΈ°λ de factoλΌμ μ μ νμ€μ΄ μλλ€. λ°λΌμ μ¬μ©μ λν΄ μ μν νμκ° μλ€.[1]
Debugger μ μ¬μ© ¶
μμΈλ‘ Debugger λ₯Ό μ΄μ©νμ§ μλ μ¬λλ€μ΄ μλ€. UnitTest λ₯Ό μμ±νλ©΄μ νλ‘κ·Έλλ°μ νμ§ μλλ€λ©΄, Debuggerλ λΆκ°νΌνλ€. νκ΅ νλ‘κ·Έλλ° μμ
λ μ μμΌλ‘ κ°λ₯΄μΉμ§ μκΈ° λλ¬Έμ MSDNμ΄λ μ¨λΌμΈμ κ°μ’, μκ³ μλ νμ°λ€μκ² λ¬Όμ΄λ³΄μ λ°°μΈμ μλ€.
(More to come)
(More to come)
μ¬λ¬κ°μ Project λ₯Ό μ¬μ©νκΈ° ¶
μμ : ProjectTheCell (νμ¬ μ§νμ€μΈ Othello Project)
(more to come)
VS.net μμλ νλ‘μ νΈ μμ κ°λ μΌλ‘ μ루μ μ΄ μ‘΄μ¬ν©λλ€. (6.0λ κ·Έλ¬λ? WorkSpaceλΌλ λ μμ΄ μμλλ―... μ무νΌ~). μ¬λ¬ νλ‘μ νΈλ₯Ό ν μ루μ μμ κ΄λ¦¬νλ κ² μλΉν νΈν΄ μ‘λκ΅°μ. μμ νλ‘μ νΈλ₯Ό μ€μ νκ³ , νλ‘μ νΈμ μ»΄νμΌ μμλ₯Ό κ²°μ νλ μΌλ ν μ μκ³ μ.
(more to come)
VS.net μμλ νλ‘μ νΈ μμ κ°λ μΌλ‘ μ루μ μ΄ μ‘΄μ¬ν©λλ€. (6.0λ κ·Έλ¬λ? WorkSpaceλΌλ λ μμ΄ μμλλ―... μ무νΌ~). μ¬λ¬ νλ‘μ νΈλ₯Ό ν μ루μ μμ κ΄λ¦¬νλ κ² μλΉν νΈν΄ μ‘λκ΅°μ. μμ νλ‘μ νΈλ₯Ό μ€μ νκ³ , νλ‘μ νΈμ μ»΄νμΌ μμλ₯Ό κ²°μ νλ μΌλ ν μ μκ³ μ.
λΌμ΄λΈλ¬λ¦¬ νμΌ λ§ν¬ κ±ΈκΈ° ¶
κΈ°λ³Έμ μΌλ‘ μ§μ λ κ²½λ‘ λ°μμ λΌμ΄λΈλ¬λ¦¬λ₯Ό μ¬μ©ν΄μΌ νλ κ²½μ°κ° μλ€. λͺ°λλ€κ° λ§ν¬λ₯Ό κ±°λλΌ νμ°Έ κ³ μν κΉμ μ¬κΈ°μ μ 리ν΄λ³Έλ€.
VS 6.0 ¶
- Project(νλ‘μ νΈ) » Settings(μ€μ )λ₯Ό μ νν©λλ€.
- Link(μ°κ²°) νμ μ νν©λλ€.
- Category(μΉ΄ν
κ³ λ¦¬) λλ‘ λ€μ΄ λ©λ΄μμ Input(μ
λ ₯)μ μ νν©λλ€.
- Object/library(κ°μ²΄/λΌμ΄λΈλ¬λ¦¬) λͺ¨λ λΆλΆμμ λΌμ΄λΈλ¬λ¦¬ νμΌ μ΄λ¦μ μΆκ°ν©λλ€.
- κ·Έλ¦¬κ³ λΌμ΄λΈλ¬λ¦¬ κ²½λ‘λ₯Ό μ΄ λΌμ΄λΈλ¬λ¦¬λ€μ μμΉμ μΆκ°ν΄μΌ ν©λλ€. Additional library path(μΆκ° λΌμ΄λΈλ¬λ¦¬ κ²½λ‘)μ λΌμ΄λΈλ¬λ¦¬ νμΌμ΄ μλ ν΄λλ₯Ό μΆκ°ν΄ μ£ΌμΈμ.
VS.NET ¶
----
- [1] pragmaλ onceμΈμλ λ€λ₯Έ optionλ μ‘΄μ¬νλ€.