?? ?? ?????(OOP)? ??? ??? ?? ?? ??? ???? ?? ???? ???? ??? ?? ????? ?? ??? ?????. ? ?? ??? ???? ???? ?? ?? ???? ?? ??? ???? ?????.
? "?? ?? ???" ????
'?? ?? ???' ??? ???? ???? ???? ???? ?? ???? ??? ??? ???? ?? ?????. ?? ?? ??? ??? ??? ????? ?????.
?? ??? ??? ?? ??? ???? ????? ?? ??? ?? ??? ????? ?? ?????. ? ??? ??? ????? ???? ????? ??? ???? ?? ???? ??????.
????? ?: ?? ? ????
?? ?? ? ?? ???? ??? ? ????? ??? ??? ????? ???????.
"??" ?? ??
<code>class AskMonitor { private int value; private int limit; private String name; private Alarm alarm; public AskMonitor(String name, int limit, Alarm alarm) { this.name = name; this.limit = limit; this.alarm = alarm; } public int getValue() { return value; } public void setValue(int value) { this.value = value; } public int getLimit() { return limit; } public String getName() { return name; } public Alarm getAlarm() { return alarm; } }</code>
???:
<code>AskMonitor monitor = new AskMonitor("Temperature Sensor", 100, alarm); monitor.setValue(120); if (monitor.getValue() > monitor.getLimit()) { monitor.getAlarm().warn(monitor.getName() + " is too high"); }</code>
"???" ?? ??
"Tell, Don't Ask"? ???? ?? ??? Monitor
???? ?????.
<code>class TellMonitor { private int value; private int limit; private String name; private Alarm alarm; public TellMonitor(String name, int limit, Alarm alarm) { this.name = name; this.limit = limit; this.alarm = alarm; } public void setValue(int value) { this.value = value; if (this.value > this.limit) { alarm.warn(name + " is too high"); } } }</code>
???:
<code>TellMonitor monitor = new TellMonitor("Temperature Sensor", 100, alarm); monitor.setValue(120);</code>
"Tell" ??? setValue
??? ?? ??? ????? ?? ????? ?????.
? '?? ?? ???'? ??
? ??? ???: ???? ??? ???? ?????.
? Concise Code: ??? ????? ?? ??? ??????.
? ????? ??: ?? ?? ? ??? ? ??????.
? "?"?? ? ?
? ???? ??: ??? ????? ??? ?? ??? ?? ?? ??.
?: ??? ????
Monitor
??? ?? ??? ???? ???? ??? ???? ???.
? ?? ??? ??: ??? ???? ?? ??(?: ??, ??)? ?????.
?:
UserProfile
??? ??? ?? ? ?? ??? ???? ???????.
? "??"?? ? ?
? ??? ??: ??? ??? ???? ?? ???? ??? ??
?:
User
??? ??? ??? ?????.
? ?? ????: ??? ?? ??? ???? ??.
?: ???? ??? ???? ???? ??
Person
? ??? ????.
? ?? ??: ??? ???? ?? ??? ?? ?? ??? ???? ??? ??.
?:
Router
? ??? ??? ??Server
? ??? ?????.
? ????
??? ?????? ? ????? ?? ???? ?? ???? ?????!
- 100??? ???? KISS ??? ??
- 100??? ???? DRY ??
?? ???? ?? ?? ??? ?????:
- ????
- ???
- ???/X
? ??? '??? ?? ???' ??? ? ? ?? ??? ?? ?????. ??? ??? PHP ??? ????? ?? ?? ??? ?????!

? AI ??

Undress AI Tool
??? ???? ??

Undresser.AI Undress
???? ?? ??? ??? ?? AI ?? ?

AI Clothes Remover
???? ?? ???? ??? AI ?????.

Clothoff.io
AI ? ???

Video Face Swap
??? ??? AI ?? ?? ??? ???? ?? ???? ??? ?? ????!

?? ??

??? ??

???++7.3.1
???? ?? ?? ?? ???

SublimeText3 ??? ??
??? ??, ???? ?? ????.

???? 13.0.1 ???
??? PHP ?? ?? ??

???? CS6
??? ? ?? ??

SublimeText3 Mac ??
? ??? ?? ?? ?????(SublimeText3)

??? ??











?, ?? ???? C? ??? ??, ?? ??? ? ??????. 1. ?? ???? ??? ??? ?? ?? ??? ?? ?? ??? ?????. 2. ????? ??? ?? ??? ?? ??? ??? ?? ? ??? ?????. 3. ??? ???? ?? ?? ???? ???? ?? ?? ??? ??? ????? ????? ???? ?????.

C? ? ?? ?? ??? ??? ??? : ??? ?? ??? ? ??? ???. 1. ??? ?? ???? ?? ??? ? ???? ?? ????? ?? ??? ????? ?? ???? ??? ? ????. 2. ??? ???? ?? ?? ? ??? ?? ???? ???? ??? ?? ?? ??? ?????.

?, C? ???? ?? ?????. 1) ??? ??? ?? ?? ? ??? ???? ?????. 2) ?? ???? ???? ??? ????. 3) ?? ??? ????? ??? ?? ???? ??? ??? ? ??????. ?? ? ??? ?? ???? ???? ??? ?????? ??? ?? ?????.

C DestructorsCanleadToSeVeralCommonerrors.toaVoidthem : 1) ?? ?? ?? ?? ?? ?? ???

?? ???? ??? C?? ??? ??? ???? ??? : ? ????? ? ? ????? C? ??? ? ????? ?? ?? ??? ?? ??? ???? ?????. 1. ?? ??? ???? C? ?? ??? ???? ?? ?? ?? Curly Braces {}? ???? ?? ??? ?? ??? ???????. 2. ?? ??? ? ??? ?? ???? C?? ?? ??? ?? ????? ??? ???? ???? ???? ??? ?????? ???????. RAII ??? ?? ??? ??? ? ????. 3. ?? ? ??? ???? C? ?? ?, ??? ? ???? ?? ??? ??????? ??? ???? ?? ?? ??? ???????. 4. ?? ????? ???? STL? ??? ????? ????? ????? ???? ????? ????? ???????. 5

C? ???? ??? ??? ? ??? ?? ????? ????. 1. ??? ???? ?? ??? ?? ????? ???? ??? ??? ???? ?? ? ? ????. 2. ??? ?? ???? ?? ??? ? ???? ?? ????, ??? ???? ?????.

C polymorphismincludescompile time, ??? ? Templatepolymorphism.1) compile-timepolymorphismusesfunctionandoveroveroverforlogy

C DestructorseSpecialmembections? ScopeorisDeleted?? whoenanobjectgoesout.1) theaUcialmanagingMemory, FileHandles ? NetworkConnection.2) ??? wengrectdefiningdestructorsfordynamicmemory, LeadingTomemo
