在我看来,强类型vs对代码量没有多大影响。我用javascript做了很多复杂的域模型,你不能真正利用松散的类型和维护正常的代码。通常情况下,您应该保持实例字段的类型不变,有时没有对象,而在其他时间数组-苹果和梨混合只是混淆了您和其他人。
可以
要适当。
你的朋友可能对ruby的意思是声明类的简洁语法。ruby中的所有实例字段都是私有的,并且有一个简单的语法用于声明getter和setter、comparators等
红宝石
class Person
attr_reader :name, :age
attr_writer :name, :age
def initialize(name, age)
@name, @age = name, age
end
def <=>(person) # Comparison operator for sorting
@age <=> person.age
end
def to_s
"#@name (#@age)"
end
end
爪哇
public class Person implements Comparable<Person> {
private String name;
private int age;
public Person(String name, int age) {
this.name = name;
this.age = age;
}
public int compareTo(Person other) {
return this.age - other.getAge();
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
public String toString() {
return name + " ("+age+")";
}
}