
After a long time waiting... Then the BILLIONTH PRIME has come !
p[1'000'000'000]=22'801'763'489
By this reason, some authors prefer a set notation and write f ∈ O(g), thinking of O(g) as the set of all functions dominated by g.
Furthermore, an "equation" of the form
f(x) = h(x) + O(g(x))
is to be understood as "the difference of f(x) and h(x) is O(g(x))".
In casual use, O is commonly used where Θ is meant, i.e., a tight estimate is implied. For example, one might say "heapsort is O(n log n) in average case" when the intended meaning was "heapsort is Θ(n log n) in average case". Both statements are true, but the latter is a stronger claim.
**) Here is a hint (and mnemonics) why Landau selected these Greek letters: "omicron" is "o-micron", i.e., "o-small", whereas "o-mega" is "o-BIG".
Quan điểm của nó là bổ sung vào những khiếm khuyết mà do OOP mắc phải. Khiếm khuyển đó là ǵ?
- Tính trùng lắp(đan nhau) về mă chương tŕnh -> khó bảo tŕ và mở rộng chương tŕnh.
- Phương pháp lập tŕnh OOP cố gắng mô phỏng thế giới thực - Object, nhưng thế giới thực tồn tại Subject nhiều hơn là Object. Với việc thiết kế mẫu (Design Partern), OOP cũng có thể tạo ra Subject nhưng thường là phức tạp do vấn đề 1 gây ra.
- Object trong thế giới thực có chu ḱ sống: Sinh ra - Hoạt động - Phát triển - Chết đi, nhưng Object trong thế giới OOP th́ chỉ có Sinh ra - Phát triển - Chết đi.
Những khiếm khuyết trên là cần thiết loại bỏ v́ sự phát triển cùa công nghiệp phần mềm. AOP tỏ ra có khả năng làm việc đó...
Trong tư duy phát triển phần mềm OOP và AOP có ǵ khác?
OOP xem xét bài toán từ h́nh thức tổng quát hoá các yêu cầu -> các Object.
AOP xem xét bài toán dưới góc độ phân ră hoá các yêu cầu -> các Apect.