|
|
Mình không phản đối việc đi học ở trường, bởi nhiều lý do giống mấy bạn khác đã nói, và mình cũng thích tới trường học nữa, vừa được bạn bè, vừa có thầy chỉ. Thầy chỉ nói trong 45 phút thôi, nhưng bằng mình bỏ ra mấy tuần để đọc sách mà thu được cũng bằng đó kiến thức.
Nhưng nếu không thể đi học ở trường chính quy thì sao? Mình không có tiền để đóng học phí, mình đang phải làm thêm mà chỉ kiếm được mức lương chết đói. Nhà nghèo lắm, không hỗ trợ được, lại có thêm đứa em nó cũng chuẩn bị vào đại học nữa. Tiền lo không xuể.
Giờ thì đành tự học vậy. Vừa làm, vừa học. Chỉ tiếc là làm việc trái nghề, lấy tiền nuôi ước mơ mà thôi. Nhưng phân tâm lắm, nói là làm trái nghề, nhưng cũng phải cố gắng làm tốt công việc, mà nếu nói làm tốt công việc thì tốn thời gian. Chính nó lấy mất đi một phần điều kiện tự học của mình.
Cuối cùng, bạn tự học tới đâu gòi? Mình đang học quyển [Wrox] Beginning Visual C++ 2005 . Đọc lâu lắm gòi mà mới tới được chương 14 hà. Còn mấy chục chương nữa lận. Mình muốn học để biết sử dụng VC++, và bộ IDE Visual Studio 2005 để tạo ra ứng dụng chạy trên Windows.
Mình đã mất khá nhiều thời gian để xác định mình ham muốn điều gì nhất. Mình cảm ơn anh Ma châm nhiều lắm. Đọc bài rookie của anh, tuy chỉ về mạng, nhưng nó thắp sáng ước mơ trở thành lập trình viên của mình, không phải trở thành người quản tri mạng hay hacker. Thật tiếc là anh không dùng ví dụ về lập trình ứng dụng mà chỉ nói về mạng. Có lẻ là do công việc của anh làm anh biết tới nó nhiều hơn cái khác.
Mình kiếm được trên mạng có một mẩu chuyện giống như của anh ma châm vậy. Mình hong nhớ tên, nhưng cái anh Craftman đó cũng tài như anh Ma châm vậy. Bạn search thử xem.
Mà bạn học tới đâu gòi? Bạn học gì vậy? Có học VC++ MFC hong? Bạn muốn làm phần mềm gì vậy? Mình trao đổi với nhau được không? Nếu bạn cùng sở thích.
Thân.
PS: Bị anh ma châm sửa vài lần, giờ thì không viết bài mà dùng từ của tuổi teen nữa gòi. Bắt đền anh đó! Khi nào em giỏi, em phá hva của anh nà
|
|
|
Tôi học CNTT vì......thi rớt khoa điện-điện tử, cứ nghĩ dù gì thì máy vi tính chắc cũng liên quan đến điện tử, nên cứ thế mà học luôn thay vì theo đám bạn luyện thi. Với lại biết thi năm sau có đậu hay không?
Tôi học ngôn ngữ C vì trường không dùng ngôn ngữ nào khác để minh họa bài giảng. Hôm học môn mạng máy tính, tôi thấy nó chán chán nên ngồi ngáp quá trời. Tôi vốn học dỡ, nhưng khi thi lại được điểm khá môn mạng máy tính hơn mấy đứa trong lớp. Thật bất ngờ khi biết tụi nó nghĩ môn này là khó. Tôi rất thích ngồi vào máy, gõ bài tập thầy đưa rồi nhấn Ctrl+F9 để chiêm ngưởng sản phẩm của mình. Hôm xem kết quả thi thì mới biết mình xém mắc nợ nó.
Rồi.....gãy gánh giữa đường. Tôi được làm sinh viên mãi mãi. Tôi chưa hoàn chỉnh được kiến thức lập trình của mình thì làm sao mà trở thành lập trình viên? Rồi tôi đi làm việc, công việc phổ thông thôi. Thật đáng buồn cho cái danh đã từng vào trường đại học, mà còn là đại học CNTT nữa chứ.
Hôm nọ đi uống cafe ở quán gần trường, vô tình ngồi trong góc khuất của quán và cũng vô tình đám bạn cũ nó cũng vào đó uống. Chúng giờ đã được gọi là lập trình viên cho công ty phần mềm cả rồi. Thật may mắn là tui nó đã không nhìn thấy tôi. Tôi cũng không dám ra chào! Ngồi nghe mấy lời than thở của tụi nó mà tôi muốn khóc. Ước gì mà cũng được thản thở như vậy. Thế tụi nó nói gì à? Bạn đọc mấy bài đầu của mục này sẽ biết. Không giống y vậy, nhưng có ý giống vậy.
Tôi buông xuôi ư? Tôi không còn muốn làm lập trình viên nữa ư? Tôi thất vọng? hay tôi ngồi đau khổ cho cái thất bại của mình?
HVAForum.net là ở đâu nào? Thành viên của nó thì làm gì? Thật buồn cười như hồi đi học, tôi vẫn thích ngồi viết mã, nhưng công việc lại là quản lý mạng. Tôi luôn cố gắng hoàn thành tốt công việc của mình, nhưng nó không bao giờ tốt được cả. Bởi tôi có thích nó đâu? Và công việc đang làm cũng có thể gọi là lao động phổ thông thôi, làm nhân viên coi phòng net công cộng. Vậy thì sao chứ? có sao đâu? Tôi vẫn cố gắng rèn luyện môn tiếng Anh của mình, rồi học cho nó hoàn chỉnh kiến thức lập trình hay ít nhất cũng vừa đủ để không phải bị đuổi ngay trong lúc phỏng vấn vào vị trí lập trình là được.
Và tôi đang thích một việc. Ngồi trong phòng nhỏ, yên tỉnh, và chỉ nghe tiếng quạt của cái máy quay và cái màn hình đang sáng là ổn. Hiện giờ là vậy.
Ngày mai trời lại sáng mà ha! Mà trời sáng rồi còn gì, bây giờ là 5h30 sáng gòi. Thôi, không ghi linh tinh nữa. bb bà con.
.....
|
|
|
Cá nhân em đã bỏ vài tháng làm quen với C++Builder, nhưng sau đó lại bắt đầu thất vọng về nó, mặc dù vẫn có cảm tình rất nhiều. với C++Builder, mình thấy nó dùng cú pháp chuẩn của C++ => dễ làm quen. Các công cụ dễ sử dụng, dễ hiểu. Nhưng có vài cái mà C++Builder không hỗ trợ, hoặc phải làm rất khó khăn so với VC++. Chưa kể tài liệu về C++Builder rất hiếm hoi. Một câu hỏi cho vấn đề mình vừa gặp hiện tại, vào forum của Borland thì thấy có người đã hỏi cách đây 7 năm rồi, nhưng thậm chí một câu trả lời là đặt câu hỏi sai hay đúng cũng không thấy trả lời. Mình phải tìm các vd viết trên VC++ rồi tìm nhưng cái tương đồng nằm trong BC++ để làm ==>> mất thời gian quá chừng !
Mấy bạn nào đã đi làm rồi thì cho mình hỏi là các công ty phần mềm ở HCM sử dụng VC++ hay BC++ vậy ? Giúp mình định hướng để đỡ mất thời gian. Mình đã bỏ vài tháng làm quen bộ C++Builder rồi và giờ thì không biết có nên tiếp tục với nó hay là lại bắt đầu lại với VC++ nữa. hix.
|
|
|
#pragma section()... không được hỗ trợ trong bộ borland developer studio 2006 . Kiém nát nước luôn cũng không thấy chỗ nào hướng dẫn. Có mỗi cái bài hướng dẫn này http://rxlib.ru/faqs/faqc_en/20132.html, nhưng nó lại áp dụng cho thằng C++builder 4.0 hix, ai biết share memory kiểu này trong BDS2006 thì chỉ em với
|
|
|
Tuyệt ! Phần cơ chế inter-processes communication, bạn có thể đánh giá sơ bộ về chúng được hong vậy ? Để mình có cái nhìn được tổng quát một chút mà chọn phương pháp nào cho cái ứng dụng bé tí của mình. Tại sao lại có nhiều phương pháp chỉ để giải quyết một việc duy nhất là chia sẻ dữ liệu giữa 2 chương trình ?!
|
|
|
Em có 2 chương trình. A và B.
A: Chương trình chỉ là một hộp thoại nhỏ, trong nó có một TextBox.
B: Chương trinh cũng là một hợp thoại nhỏ, trong nó có một Tlabel.
Yêu cầu : khi em gõ một chuỗi ký tự vào textbox của chương trình A thì chuỗi này xuất hiện lên ở chương trình B.
Sau khi vào codeproject thì học được dùng cách hook vào một process (dùng cách CreateRemoteThread và LoadLibrary).
Vấn đề nằm ở chỗ là sau khi hook rồi thì làm sao giao tiếp được giữa 2 chương trình thì bài báo hong có nói tới. Truy tìm trên google nói nhiều thứ lắm, nhưng em chưa học nhiều thứ nên hong hiểu nổi.
Giờ nhờ mấy anh chị giúp em giới hạn lại phạm vi để giải quyết được vấn đề. Em dùng Borland Developer Studio 2006 để viết ứng dụng C++. Tài liệu em tìm thấy trên mạng toàn dùng cú pháp của VC++ . Chưa biết nhiều về C++builder nên không biết có hàm nào tương ứng với các ví dụ minh họa dùng VC++ với lại đọc code minh họa bằng VC++ cũng hong hiểu nó đang minh họa phần nào. hix ngồi mấy bữa , chóng cả mặt nhứt cả đầu, tay chân bủng rủng mà còn chưa giải quyết được >,< . Giờ em đi coi AXN chờ mấy anh chị giúp đỡ .
cám ơn pà con trước !
|
|
|
Cám ơn bác nhiều. Tải về thấy nó hơn cả trăm MB, sao lớn dữ vậy ta.
|
|
|
Ra bất cứ nhà sách nào ở Việt Nam, mua quyển sách hướng dẫn sử dụng ghost, phiên bản nào cũng được. Mua về gòi nghiền ngẫm
|
|
|
Có đoạn mã VC++ hết sức đơn giản như sau:
private: System::Void combo1_SelectedIndexChanged(
System::Object * sender, System::EventArgs * e)
{
if (sender == combo1)
{
String* ps = String::Concat(S"New index is ",
__box(combo1->SelectedIndex)->ToString());
MessageBox::Show(ps, S"Index Change");
}
}
Đoạn này lấy index của một comboBox chuyển nó sang kiểu String. Đoạn mã này áp dụng với VS2003 tốt, nhưng với VS2005 thì nó báo là phải thêm /clr:oldSyntax. Khi mình chuyển sang như yêu cầu của nó thì xuất hiện nhiều lỗi lắm.
Mình muốn hỏi là có cách nào box một đối tượng kiểu value sang reference như hàm __box() này vẫn làm hay không vậy ? Mình không muốn chuyển sang oldSyntax như chương trình yêu cầu. Bộ sang VS2005 thì cú pháp VC++ có thay đổi gì hả mấy bạn . Mình đang học VC++, không nhìu kinh nghiệm lắm, rất mong được giúp đỡ. Cám ơn nhìu.
|
|
|
- Hong thấy sư huynh nào giúp đỡ hết . Buồn !
- Handle : Em không hiểu từ này là cái gì nữa.
|
|
|
Lập trình cần có thuật toán giải quyết vấn đề, nó là quan trọng. VD: Vẽ một đường thẳng. Em sử dụng công thức y = ax + b . Okie vậy là có công thức rồi. Nhưng phép nhân không nhanh bằng phép cộng khi thực hiện tính toán đối với cpu. Thế là "khử" cái công thức đó về phép cộng. Okie. Sau khi coi trong mấy quyển bí kíp của ông sư thúc tổ để lại. Em đã biết được công thức vẽ đường thằng trên máy tính chỉ bằng phép cộng. Cực kỳ tối ưu. Em quay qua vẽ đường tròn, lại dùng công thức toán của đường tròn, rồi lại tối ưu. Ngon lành.
....Sau khi hì hục học xong quyển bí kíp tầng một, biết được công thức vẽ đường thẳng cực kỳ hay. Đột nhiên em lụm được một quyển bí kíp khác, còn tối ưu hơn nữa. Quyển bí kíp đó nói đến nội công tâm pháp của môn phái Microsoft, môn VC++. Thay vì ngồi lập trình cái hàm vẽ đường thẳng, em chỉ việc gõ vào cái hàm được làm sẵn. Thế là có một cái đường thẳng. ) . Quyển bí kíp nó nói vậy. Trên cả tuyệt vời! Thế là em bắt đầu luyện quyển bí kíp này.
... Nhưng hình như em còn thiếu phần võ công căn bản. Đọc mãi chưa hiểu được bao nhiêu:
- Device context : Ngữ cảnh thiết bị. Em gọi nó là thiết bị ảo, phần trừu tượng nhất mà MS tạo ra, đại diện cho tất cả thiết bị phần cứng. Khi muốn sử dụng một thiết bị cụ thể nào của máy tính, em chỉ việc đưa yêu cầu nhờ thiết bị ảo này chọn dùm đối tượng vật lý thực sự.
- GDI : Các đối tượng đồ họa. Đây là các thế đứng, nằm, ngồi mà MS đã đúc kết bao nhiêu năm tu luyện và truyền lại. Muốn đứng thẳng như cái cây hay cong cong như cái đường tròn thì chỉ việc làm theo các thế võ này.
- Mapping mode: Chiêu thức này có vẻ hay ho nhất, hình như giống chiêu thứ 72 của Tề Thiên Đại Thánh ngày trước. Em có thể phóng to, thu nhỏ, tròn méo như thế nào là tùy thích.
- Message mapping : Em nghĩ đây là phần luyện khí công . Khi lắc đầu, gảy chân, đưa tay,... em gởi thông điệp xuống tới bộ phận đó. Bộ phận đó tiếp nhận xử lý uốn éo theo ý nó muốn. :lol
Mới có ngộ ra được nhiêu đó hà. Hong biết là ngộ đúng hong nữa . :wink:
Mấy anh giúp đỡ, điểm huyệt dùm em để có thể lần lượt đã thông hết kỳ kinh bát mạch cái nhe. :lol
|
|
|
conmale wrote:
thanhyeu999 wrote:
làm việc sau này, em đọc trên mấy tờ việc làm thì toàn thấy là phải có kien thức ve lập trình
Loại công việc ấy đòi hỏi cụ thể lập trình... cái gì không? Lập trình thì có hơn chục lãnh vực đặc thù, ngôn ngữ phổ biến thì có hơn chục loại, ngôn ngữ lớn nhỏ khác thì có hơn trăm loại.
Có lẽ điều em cần làm quen trước là khả năng suy luận (logic) và phân tích (reasoning) trước khi nhào vô học cú pháp một ngôn ngữ lập trình bởi vì học cú pháp dễ, học cách ứng dụng và suy luận khó. Ví dụ, cho em 3 con đường để đi tới đích, mỗi con đường có độ ngắn dài khác nhau, khó dễ khác nhau, đi xuyên qua chúng sẽ lợi hại khác nhau. Nếu em có thể phân tích để chọn ra con đường thích hợp nhất trong điều kiện cho phép, lúc ấy em học cú pháp lập trình sẽ dễ dàng và dễ thành công hơn.
Thân mến.
Em chọn VS C++ , học để viết ra ứng dụng , vd : auto kill cho vltk . Rồi đó, em xác định vậy được chưa anh ?
Việc học và hiểu về OOP coi như có chút hiểu biết. Các từ như: đối tượng, kế thừa, overload, virtual method, đa hình, operator,... nói chung là phần căn bản về C++ em học cả rồi.
Nhưng khi học VC++ vẫn thấy hình như em còn thiếu cái gì đó chưa biết. Em thấy có một khoảng trống kiến thức, tính từ khi em học lập trình C++ trên BC++ 3.1 với VC++ hiện tại (dùng VS 2005). Đọc quyển MS Press - Programming with Microsoft Visual C++ .NET 6th Edition thấy trong người nó cứ ngu ngu sao ấy. Em thấy sao mà mấy cái lớp của MFC nó cứ ngu ngu sao ấy, lớp nào cũng có chữ C... phía trước, biến thì đặt tên theo kiểu gì mà cứ m_nXXX . Nhưng điều quan trọng là hong biết làm sao mà nhớ hết mấy chục lớp , kiểu,... của VC++ cà. Đọc quyển sách cứ quên đầu quên đích hoài à. Chương nào có vd em cũng làm tất, bình thường gõ = tay cho nhớ, lười quá thì copy rồi past , làm xong vd, đọc phần giải thích của nó, hiểu được 20% của nó là em đã thấy mình tài lắm rồi . Hong biết tới chừng nào mới làm chủ được phần cú pháp của VC++ nữa cà. Vậy mà anh cứ nói là cú pháp dễ học lắm. Chưa biết gì về application framework thì thấy nó nói tới application form rồi còn web form nữa chứ (Programming Microsoft Windows with C#). Ẹc ẹc.
ps: nói lăng nhăng lại quên mất câu hỏi chính. Làm sao mà học VC++ cho tốt bi giờ anh ? Em chỉ nói riêng về phần học thuộc cú pháp của nó thôi cà. Rồi còn application framework nữa chứ, chả biết nó là cái gì, đọc mãi, làm vd tới chương 6 rồi mà còn ù ù cạc cạc.
|
|
|
chán nhỉ ! Bởi vậy có câu, tiểu nhân và phụ nữ thì.... sau ấy nhỉ ! Không vô được bằng tên thì vô bằng địa chỉ, nhằm nhò gì. Bị ăn cắp thì thưa CA. Lại trời cho mấy thằng ăn trộm đừng bị bắt. Hong thì chắc ở tù rụt xương. Chỉ giỏi mỗi cái phá đám. Đúng là ăn hong được phá cho hôi mà.
|
|
|
Hong có ai rãnh rỗi giúp em cả sao ! hix, dù sao thì hôm nay cuối tuần. Đi hành hiệp giang hồ cho đỡ buồn !!!!
|
|
|
Tớ nghĩ chắc là phải có một phương pháp nào đó để giúp ta chia lớp cho nó hiệu quả . Chứ nếu không , ngồi suy nghĩ khơi khơi viết xuống giấy linh tinh thì làm sao mà xác định được các lớp cơ chứ . Nếu mà viết ra cả đống vấn đề, nhìn không biết đâu là lớp đâu là phương thức, cái nào phù hợp cái nào,...
Tớ có một quyển sách mượn được từ một người bạn cũ. Quyển sách nói về UML . Tớ quên mất nguyên chữ của nó là gì rồi ! Nhưng trong quyển sách đó có nói về phương pháp xác định class dựa vào các tình huống sử dụng ( use case) . Mà muốn xác định các use case thì ta phải "nhập vai" vào một ai đó hay cái gì đó để có góc nhìn phù hợp( user view, program view,...) . Chỉ tiếc là quyển sách này nó là một cái khung giáo trình, chứ không phải là một quyển sách hướng dẫn thực thụ, nên tớ đọc và nắm vấn đề nhưng vẫn không thực hành được. Tớ thấy mình còn thiếu kỹ năng gì đó .
vd : Tớ đặt mình ở vị trí là user view . Ở vị trí là một người dùng bình thường thì cái ứng dụng web tin tức sẽ có các tình huống sử dụng như sau :
actor -> truy cập server lần đầu -> server trả về trang chủ -> actor.
actor -> Ra yêu cầu tìm bản tin nào đó -> server thực hiện tìm kiếm -> server trả về kết quả -> actor
*actor : là một người hay một hệ thống nào đó tương tác với ứng dụng hay hệ thống mà ta đang xét .
*Entity : đối tượng hay lớp tương tác với hệ thống
*Boundary : lớp hay đối tượng cung cấp các thông tin giúp cho hệ thống họat động
*Control : lớp chịu trách nhiệm xử lý tình huống
Use case ------------------------Control--------------Entity--------------Boundary
truy cập server lần đầu---BusinessClass----PresentationClass----DataClass
server trả về trang chủ---PresentationClass-----------^-------BusinessClass
Ra yêu cầu tìm bản tin nào đó^--------------PresentationNewsClass-------^
server thực hiện tìm kiếm --BusinessNewsClass--PresentationNewsClass--DataNewsClass
server trả về kết quả----PresentationNewsClass------^--------BusinessNewsClass
Vấn đề nằm ở chỗ , tớ hong biết mình xác định tình huống sử dụng có đúng hay không . Kế đến là mỗi tình huống như thế, tớ xác định lớp có đúng hay không, dư hay thiếu ,....
Mong mấy bạn chỉ điểm nha ! Cám ơn .
|
|
|
Hồi trước đi học, lúc đó học lập trình dạng thủ tục , được thầy dạy cho cách xác định cấu trúc dữ liệu để lập trình (giờ trả thầy gòi ! ). Khi chuyển sang lập trình dạng hướng đối tượng thì em không được chỉ cách xác định là mình cần bao nhiêu đối tượng, cách xác định các hành động của đối tượng..... Giờ tự ngồi mò mẫm cái C# , lúc làm bài tập thì không biết làm thế nào để xác định mình cần bao nhiêu lớp, phương thức nào, thiết kế lớp interface, abstract,....
Em nhớ là có đọc đâu đó là mình phải xác định các tình huống có thể để suy ra các lớp và dựa vào chỗ nào đó để suy ra phương thức. Nhưng bị giờ thì chịu luôn ! Hong biết làm thế nào !
Bác nào biết chỉ em với nha . thks !
|
|
|
A, như vậy em biết được tại sao người ta chế ra cái interface này làm gì rồi. Hôm qua giờ ngồi suy nghĩ không biết ứng dụng lớp Business giao tiếp với lớp Data như thế nào và chúng có liên quan gì tới cái interface với cái delegate không nữa ! Giờ thì hình dung ra được chút chút .
Cám ơn anh nhiều !!!!
|
|
|
hix, sao bác hong nói luôn DFD là cái gì ? xi nghĩ mãi mà hong biết DFD là cái gì luôn thì làm sao mà tìm hiểu . Em viết nhiều bởi vì em hong biết làm sao !!! Chưa làm được một sản phẩm hoàn chỉnh bao giờ cả thì làm sao mà biết đường thực hiện cơ chứ !!!!!
|
|
|
conmale wrote:
Em nên hiểu "interface" trong tình huống này là một "bản" quy định. Nó chỉ đơn thuần đưa ra quy định mà không chứa bất cứ thông tin gì đụng đến việc thực thi.
Như vậy cái đoạn này :
The .NET Framework provides standard interfaces for enumerating, comparing, and creating collections.
Em hiểu như vầy có được hong vậy anh :
.NET Framework cung cấp các bản quy định về việc thực hiện các động tác liệt kê (enumerating), so sánh (comparing), và việc tạo tập hợp (creating collection )
conmale wrote:
Những class ứng dụng theo "interface" này sẽ dựa theo quy định mà thực hiện chuyện "do"
Như vậy , nếu em trang bị cái interface nào đó cho một lớp của em tạo ra, có nghĩa là em phải trang bị vào lớp của em các phương thức mà cái interface đó có , hay nói cách khác là trang bị vào lớp của em cái quy định mà interface đó yêu cầu. Đúng hong vậy anh ? Em nghĩ chắc là đúng .
Sau khi em trang bị vào lớp của em cái interface đó, khi em gọi một phương thức trong lớp của em , em có 2 cách gọi (?!) . Một là em gọi trực tiếp từ một instant của lớp do em tạo, cách khác là em gọi từ một instant của interface .
À sẵn tiện cho em hỏi luôn cái chữ instant (hong biết đúng chính tả hong nữa ! ) . Tiếng Việt nó có nghĩa gì vậy anh ? Thiệt tình mà nói thì , nếu em không liên tưởng mấy cái từ mới này với cái gì đó mà em đã biết thì em học quài cũng hong nhớ được !
Cám ơn anh và các bạn khác nữa !
|
|
|
hix, thực tình thì em không biết bắt đầu như thế nào nữa ! Ngồi xi nghĩ hôm qua tới giờ, vẽ mấy chục cái hình, ghi ra cả đống yêu cầu..., nhưng chưa xi ra được là mình cần lớp nào, phương thức nào cho mỗi tầng thiết kế.!!!! :? Rồi cấu trúc dữ liệu như thế nào nữa !!! Rồi thiết kế lớp xử lý nghiệp vụ giao tiếp với lớp dữ liệu và lớp biểu diễn như thế nào nữa !!!!
|
|
|
Cám ơn chú macham chỉ bảo em. Coi như em có tiến bộ tí . Nhưng tới đó rồi làm sao nữa bi giờ vậy anh ?
|
|
|
Máy tui cũng bị vầy nè. Hình như là do thiết lập bios tự động khởi động lại khi cúp điện hoặc tự khởi động qua mạng (wake on lan) hoặc tự khởi động theo thời gian định trước ,... Tui hong nhớ mình thiết lập cái nào nữa. Nhưng khi tui trả về thiết lập Default của bios thì hết gòi.
|
|
|
Collection Interfaces
The .NET Framework provides standard interfaces for enumerating, comparing, and creating collections.
Đọc trong sách có đoạn này, nhưng hong hiểu lắm . Mí bác giúp em cái nghen. Cái chữ Interface, enumerating dịch sang tiếng Việt thì mình phải hiểu như thế nào mí bác nhỉ ?! :wink:
|
|
|
Cám ơn bác nha
|
|
|
Hix, cảm động quá đi ! Cám ơn mí bác giúp đỡ nghen !
|
|
|
Ứng dụng: “web tin tức cực kỳ đơn giản”
Conmale: Điểm quan trọng là thử hình dung một người dùng bình thường họ cần gì? một người làm quản lý thì cần gì? Nếu họ cần như thế thì phải sắp xếp những gì? cần những bộ phận gì trong ứng dụng của mình để lo liệu?
Người dùng bình thường họ cần gì ?
- Khi vào trang web thì thấy ngay được bản tin mới nhất , cuối cùng nhất của website.
- Ngày giờ đăng của bản tin.
- Bản tin được website xếp vào loại nào trong danh mục các loại tin của website .
- Xem các bản tin nào đó trong một phân loại nào đó.
- Xem các bản tin mới nhất của một phân loại nào đó.
- Tìm một bản tin nào đó : theo ngày giờ đăng, theo phân loại, theo một câu hay chữ có trong nội dung, theo tác giả viết tin.
- In nội dung bản tin.
Một người làm quản lý thì cần gì?
- Thêm bản tin mới vào một phân loại .
- Xóa một bản tin cũ trong một phân loại.
- Chuyển bản tin sang một phân loại khác
- Chỉnh sửa nội dung bản tin
- Thêm một phân loại
- Xóa một phân loại
- Tìm xem website có bao nhiêu phân loại.
- Tìm xem mội phân loại có bao nhiêu bản tin.
-
Nếu họ cần như thế thì phải sắp xếp những gì? Cần những bộ phận gì trong ứng dụng của mình để lo liệu?
À…., hong rõ nữa ! . Nhưng chắc là phải có ít nhất 2 trang web. Một dành cho người quản lý và một dành cho người sử dụng.
- Ở góc độ người xem tin thì nhìn trang web sẽ như thế nào nhỉ ?:
o Có hình dáng : Bên trái là tên các phân loại bản tin. Bên phải là nội dung bản tin. Các bản tin cùng một phân loại không biết để đâu. À ,,, thường thì ở phía dưới nội dung một bản tin có các tin khác thuộc cùng loại. Không biết có cần sắp xếp các bản tin cùng thể loại này theo thứ tự nào đó không nhỉ ?! Chắc có . Thôi thì sắp nó theo thứ tự ngày giờ đăng tin vậy , thấy vnexpress làm thế nên bắt chước . Trong nội dung tin hay có mấy cái hình minh họa, không biết đặt nó chỗ nào nữa . Phía trên đầu trang trình bày hay có pa nô đặt biểu tượng và câu gì của một công ty hay có ấy nhỉ ?! Phía dưới chân đặt tên người viết ra trang web !
o Ta cần những gì để đáp ứng yêu cầu này nhỉ ? Một cái menu để biểu diễn các phân loại. Một cái textbox để biểu diễn nội dung tin (?) . Một cái repeater để liệt kê các tin cùng loại . Một cái user control để làm pa nô phía đầu trang, và gõ vào dòng text để ở phía chân. Mấy cái này chắc là thuộc vào lớp “Trình Bày” đây.
Các phân loại được đặt vào một bảng nào đó theo thứ tự nào đó.( Ta sắp theo ABC vậy ). Nội dung bản tin mới nhất được đặt vào một đối tượng nào đó để cái textbox của lớp Trình Bày lấy và trình bày. Một bảng danh sách tên hay tiêu đề các bản tin thuộc cùng phân loại với nội dung bên trên , được sắp xếp theo thứ tự ngày giờ đăng tin từ mới tới cũ. Mấy cái này chắc nằm vào lớp “Xử lý nghiệp vụ” đây.
Còn lớp “Giao tiếp csdl” thì sao nhỉ ? Lấy về thông tin của một phân loại trong csdl (tên, mã số). Lấy về thông tin của một bảng tin mà lớp xử lý yêu cầu (tiêu đề, nội dung, tác giả, ngày đăng tin, thuộc nhóm tin nào). Lấy về danh sách tên các bản tin thuộc một phân loại nào đó. Lấy về danh sách các phân loại.
- Ở góc độ người quản lý thì trang web sẽ trông như thế nào nhỉ ?
o Chắc là phải chia làm 2 phần . Một là để quản lý các bản tin, và một là để quản lý các phân loại. Quản lý thì chắc là phải có chức năng : thêm, xóa , sửa, thống kê . Thống kê gì nhỉ ? Chắc là xem coi có bao nhiêu phân loại hay bao nhiêu bản tin trong csdl, và đó là phân loại và bản tin gì . Trong bảng thống kê này ta sẽ có chức năng xóa, sửa trong mỗi phân loại hay mỗi bản tin. Có một chỗ nào đó (một cái nút nhấn mang tên “Thêm” chẳng hạn) để ra quyết định thêm một phân loại hay bản tin. Vây đi ! Chắc là phải dùng một cái datagrid và một cái nút ở lớp trình bày
o Ưm ... Đối với quản lý phân loại :
Xóa : xóa một phân loại khỏi csdl. Quá dễ hiểu . À quên, xóa một phân loại thì cần phải coi lại. Giả sử phân loại đó hiện có nhiều bản tin được xếp vào nó thì ứng xử sao đây ? Chắc là cho phép xóa luôn các tin thuộc phân loại đó, hoặc cho phép di chuyển bản tin sang phân loại khác rồi xóa phân loại hoặc không cho xóa phân loại nếu chưa xóa các bản tin thuộc phân loại đó. Phần này chắc thuộc “Xử lý nghiệp vụ”.
Sửa : Phân loại thì sửa những gì của phân loại nhỉ? Tên của phân loại . À nhiều khi do đánh sai chính tả . Khi sửa tên một phân loại thì các tin nằm trong phân loại sai chính tả sẽ như thế nào đây ? Chắc là phải tự hiểu và tự điều chỉnh . Việc này chắc cũng thuộc lớp “Xử lý nghiệp vụ”.
Thêm : Người quản lý được quyền thêm vào csdl một phân loại mới. Có cần phải xem xét cái gì hong nhỉ ? À, coi coi..., phân loại mới thêm có chưa ?! Chắc là cũng ở phần xử lý nghiệp vụ.
o Đối với quản lý các bản tin :
Xóa : một bản tin khỏi csdl . Chẳng cần suy nghĩ nhiều, nhấn nút xóa là coi như hạ thủ bất quờn .!
Sửa : Sửa tác giả viết tin. Tác giả thường thì trước sau như một mà ta. Nhưng biết đâu có tên nào đó ăn cắp tin của người ta rồi ghi tên mình. Có thể lắm chứ. Ok , quyết định cho phép sửa tên tác giả. Sửa tên hay còn gọi là tiêu đề bản tin . Nhiều khi cần sửa lại nhằm làm thu hút hoặc không thèm để ý cho người đọc. Sửa câu chữ trong bản tin, trường hợp nhập vào sai chính tả hay bỏ dấu câu lủng cà củng . Thay đổi phân nhóm của bảng tin, chuyển đổi danh mục cho bảng tin.
Thêm : thêm một bảng tin mới thì gồm có : Tên bảng tin, nội dung, tác giả, phân loại bảng tin. Chắc là bắt buộc phải xếp bảng tin vào một loại nào đó có trong csdl, nếu không thì người dùng xếp bảng tin vào loại nào nó mà chưa có trong csdl thì hong biết điều gì sẽ xảy ra.
- Các bản tin sẽ được lưu vào csdl. Nhưng sử dụng loại nào bi giờ ? Hong bít SQL Server, không biét là Access có được hong nữa. Nhưng bài tập này đơn giản mà. Thôi thì sử dụng MS Access làm nơi chứa các bản tin vậy .
- Cái CSDL của em nó như thế này này : Gồm 2 bảng : PhânLoaiTinTuc và CacTinTuc. Trong đó : PhânLoạiTinTức(mãphânloại PK, tênphanloai) và
CácTinTức(mãbangtin PK, tieude, noidung, tacgia, ngaydangtin, maphânloại)
- Với các ràng buộc như sau :
o Mỗi phân loại tin có một mã số duy nhất để phân biệt các phân loại khác và có thể không có hoặc có nhiều bảng tin được xếp vào nó.
o Mỗi bảng tin có một mã số duy nhất để phân bịêt với bảng tin khác và chỉ được xếp vào một phân loại tin mà thôi.
Để trả lời cho mấy câu hỏi của bác machâm mà em viết lắm thế này. Mà cũng hong biết có đủ hong nữa !
|
|
|
C# có hook API được hong nhỉ ?
Tui hong bít nữa ! Nhưng nghĩ là được . Nhưng hong biết hook API để làm gì với một chương trình viết bằng C# nữa ! Nhưng thiệt tình thì hong hiểu về cái chữ API cho lắm.
Mí bác có thể giúp em là muốn biết và quen với việc lập trình có liên quan tới mấy hàm API thì mình học cái gì hong ?
|
|
|
mí bác cho em hỏi là :muốn học cách sử dụng MS SQL server 2005 thì làm sao ? Em nghĩ là cần phải đọc sách, nhưng hong bít quyển nào mà nó dành cho begginer á. Em có mấy cuốn, nhưng thấy nó nói gì mà có liên quan tới thương mại điện tử nữa ! Đọc chóng cả mặt mà chẳng thấy an nhằm gì tới cái mình muốn . Mà thực sự thì em cũng hong bít mình muốn làm gì với cái sql server này nữa.
À , mà em dùng nó để lưu một csdl có 2 bảng nhỏ :1 bảng là DanhMucTinTuc và 1 bảng là CácTinTuc . Chỉ vậy thôi à . Em hong biết phải làm sao với thằng này nữa, đành phải dùng Access tạm để thiết kế trang web vậy . Nhưng cái bài tập yêu cầu là sql server cơ ! Rõ khổ ! Hix, phải chi có bác nào viết 1 cái tutor bằng Tiếng Việt lun thì hay quá. Tiếng Anh của em nó sao sao ấy. Có lúc đọc hiểu, có lúc hong. Bộ xử lý nhận dạng tiếng nước ngoài của em nó chạy hong có ổn định sao ấy !
|
|
|
Thiệt tình thì em không nghĩ là ASP.NET dỡ đâu. Nhưng mà em coi trong diễn đàn không thấy nói nhiều về nó. Hix . Em nghe lời bác "ma châm" , tự chọn một ngôn ngữ cho mình rồi học. Đầu tiên là ASP.NET, em đọc hết quyển Wrox.Beginning.ASP.NET.2.0.Nov.2005.eBook mà vẫn chưa làm được cái trang web cho ra hồn. Với lại càng về mấy trang cuối càng khó hiểu, do nó sử dụng VB.NET làm ví dụ mà em có biết tí gì về vb đâu à. hix. Nói theo kiểu của bác ma châm là : không rõ ngọn ngành ! Yếu căn cơ nên việc em tự học khá vất vả .
Quyết định học C#, tại hồi trước có học c/c++ nên nghĩ cú pháp nó giống giống nhau dễ tiếp thu. Cuối cùng rồi cũng nhai được hơn nữa quyển Visual Studio .NET - Programming C# - O'Reilly - 2nd Edition . Còn mấy chương cuối nữa nhưng nhai hong nổi !!!!
Trong quá trình tìm hiểu ASP.NET thì em biết đến việc thiết kế trang web theo mô hình 3 lớp : lớp trình bày, lớp xử lý nghiệp vụ, lớp giao tiếp csdl.
Ngồi suy nghĩ mãi mà không biết áp dụng kiểu thiết kế 3 lớp này với C# và ASP.NET như thế nào ! vừa bực vừa buồn vừa chán đời ! :shock: Tìm thêm mấy quyển sách khác để đọc , nhưng cũng chẳng đi tới đâu.
Em tự đặt một yêu cầu : Thiết kế một trang tin đơn giản với yêu cầu : Người dùng bình thường khi vào trang web thì đọc được những tin cuối cùng được cập nhật của trang web. Còn người dùng quản trị khi vào trang web thì có thể thêm/xoá danh mục các loại bản tin hoặc thêm/xoá một bản tin thuộc một mục nào đó. Chỉ vây thôi à. Làm thì cũng đạt được yêu cầu. Nhưng cái ứng dụng của em nó có 2 tập tin và thiết kế theo mô hình 1 lớp
.
Phải chi có một bác nào có tâm huyết như bác conmale hướng dẫn cho tụi em , giúp định hướng các kiến thức cần nắm , các giai đoạn cần thực hiện để thiết kế, cách tư duy cho hiệu quả... Nói chung là cần một trưởng nhóm. Thì hay biết mấy !
|
|
|
|
|
|
|