Todo lo que se escribe a continuaciĂłn, nunca pretende ser la verdad absoluta, pero aĂșn representa algĂșn modelo que me ayuda personalmente a encontrar formas de escribir un cĂłdigo un poco mejor.. â . , . , , , , â . « » â , ? ? , ? . . â , .
, . , .
. , 7±2 . "
" . 4±1, . â , , .
, , . : , , â . . , â , , . . , «» « » â .

. .

, , . . « ». â - . , , «» â .
, , , . , . , - « », - .
, â
. , . , â - , , . .
- .
: , , , . , , . , . . .
. . , . : . , .
-, . , «», . , . : l 1, 0 . â . «» â , ?
. - â . , , , , « » . - , - â . : â .
. , . « » . â - - « ».
, . , , . , , , , , , .
for:
- A. for(i=0 to N)
- B. for(theElementIndex=0 to theNumberOfElementsInTheList)
?
. ? ,
B , ( ) . , , .
( , - ):
- A. strings.IndexOf(x, y)
- B. s.IndexOf(x, y)
- C. std.utils.strings.IndexOf(x, y)
- D. IndexOf(x, y)
, «s» â , «, , ».
, std.utils.strings â , , , , .
D , , , .
, , , IndexOf - . , «strings» , , , a + b, int16.Add(a, b).
, , « , ». :
func foo() (int, int) {
sum, sumOfSquares := 0, 0
for _, v := range values {
sum += v
sumOfSquares += v * v
}
return sum, sumOfSquares
}
func GCD(a, b int) int {
for b != 0 {
a, b = b, a % b
}
return a
}
func GCD(a, b int) int {
if b == 0 {
return a
}
return GCD(b, a % b)
}
(foo), , . ? , , , .
,
B .
sum = sum + v.x
sum = sum + v.y
sum = sum + v.z
sum = sum + v.w
sum1 = v.x
sum2 := sum1 + v.y
sum3 := sum2 + v.z
sum4 := sum3 + v.w
, (
D) .
, 3 . â .
:
- A. for(i = 0; i < N; i++)
- B. for(i = 0; N > i; i++)
- D. for(i = 0; i <= N-1; i += 1)
- C. for(i = 0; N-1 >= i; i += 1)
, ? ,
. . â .
, - . â . .
â « » . «, ». , « i, N, , i ..».
â « » . , , « ».
. ,
APL idioms,
C++ idioms . , , ( , , ).
. , . â ( ), , .
«» «». , . , Model Controller , , .
: , . - , .
. , , , , â , «» .
, . . , :
[1,2,3].filter(v => v >= 2)
- , «2 3» «1»? «» «»? â , . , , ?
select,
discard keep.
- . ,
GetUser(string) , , . ,
CustomerID ( )
GetUser(CustomerID),
GetUserByName(string). .
â .
total1,
total2,
total3 â - . , ( ) .
sum,
sum_of_squares,
total_error â .
â . : « , , UI ». , . - - , , , , .
. . , «» . , , , - .
, :
for(var i = 0; i < 100; i++) {
var a = 4;
, . . ( ) . , , , â . , «» «» â .
â , . , , , . « , Y Z - », « , ...».
.
. ( ) , . -. , , , . - , â , «», «». â , 5 . , 10 ( !) . . â , .
. â .
â . («early return»):
public void SomeFunction(int age)
{
if (age >= 0) {
} else {
System.out.println(" ");
}
}
public void SomeFunction(int age)
{
if (age < 0){
System.out.println(" ");
return;
}
}
« -» , , . , «else» - «else» , -, « -», - , , «else» , . .
. . . -, .
« ». , â ? , . «» «». , , , . , â , , ( ) â . , « », - , «» Singleton . , ?
. â , . , â . . â , - . , , .
. :
void MinorFunction1( void ) {
}
void MinorFunction2( void ) {
}
void MinorFunction3( void ) {
}
void MajorFunction( void ) {
MinorFunction1();
MinorFunction2();
MinorFunction3();
}
void MajorFunction( void ) {
MinorFunction1();
MinorFunction2();
MinorFunction3();
}
void MinorFunction1( void ) {
}
void MinorFunction2( void ) {
}
void MinorFunction3( void ) {
}
void MajorFunction( void ) {
{
}
{
}
{
}
}
, . , . ( ) â .
â , , , , â .
, , , , , , , .. , â . , .