Gửi Thông Điệp Yêu Thương vanbinh_bt nhắn với all: thi sao rồi mấy đồ...[Mr]-Boom nhắn với All K4: Chúc mọi người có 1 kỳ thi thật tốt !!lặng lẽ yêu nhắn với nguyễn ngọc huy: chúc mi có một kỳ thi tốt nha. vẫn nhớ mingocthongcctm05f nhắn với QNGAI: hãy sát cánh bên nhau.....hi.......trinhvh91 nhắn với TM03B: TM03B đoàn kết đi chơi cuối khóa nghenNgười vô cảm nhắn với nguyenlu: Ai vậy? T vẫn bước đi trong yêu thương mà ^^381 nhắn với neyugn: mong rằng chúng ta sẽ đi đến cái đích cuối cùng !nguyenlu nhắn với Người vô cảm: Hãy bước đi trong sự yêu thươnglenguyen_alone nhắn với Young Bin: tại sao nhok lại iu bin chứ nhỉ???hp thành công nhá!!binhcaolinh nhắn với Đen Trần: Cố gắng học chăm chỉ nhé em! Gửi Thông Điệp Yêu Thương


BẢNG GIÁ QUẢNG CÁO TẠI DIỄN ĐÀN 2MIT.ORG 2012

Hiện kết quả từ 1 tới 1 của 1

Chủ đề: [Thảo luận] Code sao cho tinh tế

  1. #1
    Tham gia ngày
    Sep 2009
    Đến từ
    LT3C Co., Ltd
    Tuổi
    21
    Bài gửi
    1,635
    Cảm ơn
    1,170
    Được cảm ơn 1,245/499 bài viết
    Blog Entries
    10
    8
    MASTER
     
     
    Số lần cộng|trừ: 3 lần

    Default [Thảo luận] Code sao cho tinh tế

    Việc coding không đơn giản là code sao cho chương trình chạy được, làm việc lâu với code cũng sinh ra cái thú vị của nó. Sinh viên như tôi được học vẫn quen cách code sao cho chương trình chạy được mà chưa để ý tới mức độ phức tạp trong xử lý. Vì đa phần toàn làm bài tập. Khi code 1 phần mềm "có khả năng sử dụng được trong thực tế" mới thấy cái sai của mình.
    Topic này lập ra với mục đích chia sẻ các coding mà các bạn thấy nó là tinh tế, giản tiện và thực thi nhanh. Ví dụ như sự tinh tế trong các đặt tên ngôn ngữ C++ là 1 cải tiến của C bằng chính toán tử "++" thường gặp.

    Không ghê gớm lắm đâu. Chẳng hạn
    Return:
    - Thay vì khai báo:
    PHP Code:
    +b;
    return 
    s
    thì thay bằng
    PHP Code:
    return (a+b
    Hạn chế dùng biến toàn cục.
    Hạn chế dùng biến toàn cục.
    Bạn hay sử dụng cách này để giải quyết các bài toán nhỏ. Nhưng đưa qua các vòng lặp và biến đó tồn tại lâu dài sẽ gây thiếu bộ nhớ, code xử lý chậm hơn. Lập trình hướng đối tượng thường xử lý mã lệnh theo mô hình stack - xếp chồng. Do đó, phạm vi biến càng hẹp thì tốc độ thực thi sẽ nhanh hơn hơn. Các biến cục bộ, biến thông số (biến truyền vào - parameter),... sẽ tốt hơn so với global variable - biến toàn cục. Chẳng hạn,
    PHP Code:
          String value;
          for(
    int i 0< list.size(); i++) {
              
    value = list.get(i);
              
    // code logic có sử dụng biến value
            

    và,

    PHP Code:
      for(int i 0< list.size(); i++) {
              
    String  value = list.get(i);
              
    // code logic có sử dụng biến value
            

    các viết thứ 2 sẽ chạy nhanh hơn trong trường hợp phạm vi sử dụng của biến value không vượt quá vòng lặp for.

    Hạn chế đệ quy
    Đệ quy chỉ dùng cho các trường hợp bất đắc dĩ, vì cách này ngôn ngữ phải làm việc với stack, phải giải quyết đến cùng mới quay lại dần, ví dụ fibonanci quen thuộc với số hàng triệu...
    --> Hãy tìm cách khử đệ quy.

    So sánh
    Thường thì ta dùng if, nhưng toán tử ? cũng giải quyết được vấn đề này và rất là tinh tế. Xem ví dụ so sánh 3 số, tìm max, min.
    PHP Code:
    int function(int a,int b,int c,int &minint &max)
    {
        
    max=a;
        
    max>? (max>max=amax=c): (b>max=bmax=c);
        
    min=a;
        
    min<? (min<min=min=c): (b<min=min=c);


    Các bạn hãy chia sẻ hoặc thảo luận cách tối ưu hóa code. Mỗi người góp 1 ít, dần dần chúng ta sẽ có nhiều.

    --------------------------------------------------
    Xem các chủ đề cùng chuyên mục:


    +2 EXP
    Hãy nghĩ tới những điều tốt đẹp

  2. Có tổng cộng 4 thành viên cảm ơn integer cho bài viết này

    alt+F4  (02-01-2012), clandn.angel  (02-01-2012), interpol (02-01-2012), TruTra (03-01-2012)

Thông tin về chủ đề này

Users Browsing this Thread

Hiện giờ đang có 1 người xem chủ đề này. (0 thành viên 1 khách)

     

Chủ đề giống nhau

  1. [Thảo Luận] Đề thi Tiếng Anh 1
    By thanhson_vt03b in forum CLB Ngoại Ngữ
    Trả lời: 25
    Bài mới gửi: 14-01-2011, 08:26 PM
  2. Thảo Luận : web 3.0 là gì ??
    By withyou in forum Thiết kế web
    Trả lời: 2
    Bài mới gửi: 11-01-2011, 11:31 AM
  3. [Thảo Luận]IDM 5.19
    By Lightning in forum Utilities & System
    Trả lời: 1
    Bài mới gửi: 03-01-2010, 10:23 PM
  4. Câu hỏi thảo luận
    By chip in forum Thảo luận website, Forum
    Trả lời: 4
    Bài mới gửi: 05-09-2009, 09:53 AM

Từ khóa cho chủ đề này

266
Lượt xem

Share