Thứ Ba, 11 tháng 5, 2010

Audio Book: Đừng bao giờ từ bỏ ước mơ



Đừng bao giờ đánh mất niềm tin và từ bỏ những ước mơ, khát vọng của mình. Cánh cửa thành công không bao giờ đóng cửa. Mọi khó khăn đều có thể vượt qua, mọi thử thách đều có thể chinh phục.



Có một cậu bé sống cùng với cha của mình, một người làm nghề huấn luyện ngựa. Do công việc, người cha phải sống như một kẻ du mục. Ông đi từ trang trại này đến trang trại khác để huấn luyện các chú ngựa chưa được thuần hóa. Kết quả là việc học hành của cậu bé không được ổn định lắm. Một hôm, thầy giáo bảo cậu bé về viết một bài luận văn với đề tài "Lớn lên em muốn làm nghề gì?"

Đêm đó, cậu bé đã viết bảy trang giấy mô tả khát vọng ngày nào đó sẽ làm chủ một trang trại nuôi ngựa. Em diễn đạt ước mơ của mình thật chi tiết. Thậm chí em còn vẽ cả sơ đồ trại nuôi ngựa tương lai với diện tích khoảng 200 mẫu, trong đó em chỉ rõ chỗ nào xây nhà, chỗ nào đặt làm đường chạy cho ngựa.

Viết xong, cậu bé đem bài nộp thầy giáo.

Vài ngày sau, cậu bé nhận lại bài làm của mình với một điểm 1 to tướng và một dòng bút phê đỏ chói của thầy "Đến gặp tôi sau giờ học".

Thế là cuối giờ cậu bé đến gặp thầy và hỏi:

- Thưa thầy, tại sao em lại bị điểm 1?

- Em đã hoạch định một việc mà em không thể làm được. Ước mơ của em không có cơ sở thực tế. Em không có tiền thân lại xuất thân từ một gia đình không có chỗ ở ổn định. Nói chung, em không được một nguồn lực khả dĩ nào để thực hiện những dự tính của mình. Em có biết để làm chủ một trại nuôi ngựa thì cần phải có rất nhiều tiền không? Bây giờ tôi cho em về làm lại bài văn. Nếu em sửa chữa cho nó thực tế hơn thì tôi sẽ cứu xét đến điểm số của em. Rõ chưa?
Hôm đó, cậu bé về nhà và nghĩ ngợi mãi. Cuối cùng cậu gặp cha để hỏi ý kiến.
- Con yêu, chính con phải quyết định vì ba nghĩ đây là ước mơ của con.

Nghe cha đáp, cậu bé liền nhoẻn miệng cười và sau đó đến gặp thầy giáo của mình:
- Thưa thầy, thầy có thể giữ điểm 1 của thầy, còn em xin được giữ ước mơ của mình.
Nhiều năm trôi qua, vị thầy giáo đó đã tình cờ dẫn 30 học trò của mình đến một trang trại rộng 200 mẫu để cắm trại. Thật tình cờ, hai thầy trò đã gặp nhau. Cầm tay, thầy nói:

- Này, khi anh còn học với tôi, tôi đã đánh cắp ước mơ của anh, và suốt bao nhiêu năm qua tôi cũng đã làm thế với bao đứa trẻ khác, tôi rất ân hận về điều đó.

Nghe thầy nói thế, cậu bé nay đã là ông chủ vội đáp:

- Không, thưa thầy, thầy không có lỗi gì cả, chẳng qua thầy chỉ muốn những gì tốt đẹp sẽ đến với học trò của mình mà thôi. Còn em chỉ muốn theo đuổi tới cùng những khát vọng của đời mình.

Audio file

Audio book: Điều kì diệu từ cách nhìn cuộc sống



Điều gì quan trọng lưu lại dấu ấn của ta trong cuộc sống?
_Quan trọng không phải là những thứ bạn mang theo bên mình, mà là những gì bạn đã đóng góp.
_Quan trọng không phải là những thứ bạn nhận được, mà là những gì bạn đã cho đi.
_Quan trọng không phải là những thành công bạn đã có được trong đời, mà là ý nghĩa thật sự của chúng.
_Quan trọng không còn là năng lực của bạn, mà chính là tính cách-là những gì bạn cư xử với mọi người xung quanh.
_Quan trọng là những khỏanh khắc bạn khắc ghi trong lòng người khác khi cùng sẻ chia với họ những lo âu, phiền muộn, khi bạn an ủi và làm yên lòng họ bằng cách riêng của mình, hay chỉ đơn giản là cái nắm tay, đỡ cho một người khỏi ngã.
_Quan trọng không phải là những kí ức, mà phải là kí ức về những nười đã yêu thương bạn.
_Quan trọng đâu chỉ là bạn sẽ được mọi người nhớ đến trong bao lâu, mà là họ nhớ những gì về bạn.
_Quan trọng không phải là bạn quen biết thật nhiều người, mà là bao nhiêu người sẽ đau xót khi mất bạn trong đời.

*Vậy thì, hãy nhìn cuộc sống bằng ánh mắt yêu thương. Bởi vì chỉ có tình yêu thương mới đem lại những điều kì diệu cho cuộc sống.
_Điều quan trọng không phải là những gì đã xảy ra với bạn, mà là chính cách nhìn nhận của bạn sẽ quyết định bạn hạnh phúc hay không.
_Có một điều quan trọng mà bạn được quyền lựa chọn: đó là lựa chọn cách nhìn và thái độ của chính mình. Điều đó sẽ làm bạn hạnh phúc, lạc quan hơn hay cảm thấy khổ đau, bất hạnh hơn.

Audio file

Những quyển sách lập trình C và C++

1. Ứng đụng lập trình C

2. The C Programming Language

3. C Network programming with window sockets

4. Networking __ Wireless Security

5. Lập trình C

6. Core C: A Software Engineering Approach

7. C Programming How To


8. C Container 4

9. C Profession Programmer's handbook

10. C Primer 3rd

11. C Networking Programming Volume 1

12. C Coding Standard

13. C Annotations

14. C Networking Programming Volume 2

15. C Programming language Special 3rd Edition

16. C Essential

17. The C Complete Referecne

18. http://kewlshare.com/dl/5acbb81fb8bd/Bjarne_Stroustrup_-_The_C___Programming_Language_Third_Edition_.pdf.html

19. http://kewlshare.com/dl/88d4c236dce0/Addison_Wesley_-_C___by_Dissection.pdf.html

Audio book: DÁM THẤT BẠI

DÁM THẤT BẠI




Billi P.S.Lim
Trần Hạo Nhiên dịch
(tái bản lần thứ 9)





“So với những người thất bại,
những người thành công thật sự
đã thất bại nhiều lần hơn,
chỉ đơn giản là vì
họ đã cố gắng nhiều lần hơn!”





Copyright@1996 by Billi P.S Lim.
Dịch theo nguyên tác tiếng Anh
“DARE TO FAIL” của Billi P. S Lim.
HARDKNOCKS FACTORY SDN BHD
Nhà xuất bản Trẻ

Tải file mp3

Tải sách
Pass: rapidshare.vn

Audio book: 50 điều trường học không dạy bạn



Đứa trẻ nào cũng được dạy ở trường rằng một học sinh ngoan phải biết yêu thương mọi người, kính trọng, lễ phép với ông bà, cha mẹ, thầy cô giáo ; hòa nhã, thân ái với bạn bè,… Một học sinh giỏi phải biết giải các bài toán khó, biết làm những bài văn hay và thuộc bài,… Không có trường lớp nào nói cho chúng ta biết rằng “Các em không hoàn hảo nhưng cũng không cần tỏ ra là người hoàn hảo»; chẳng có bài học nào rèn luyện cho chúng ta cách đối mặt với những bất công trong cuộc sống ; cũng không có trang sách nào dạy cho chúng ta biết «một lần bị bẽ mặt, chúng ta sẽ trưởng thành hơn”… Vậy chúng ta phải học những điều đó từ đâu?



Câu trả lời nằm trong cuốn sách 50 điều trường học không dạy bạn. Tập hợp từ những trải nghiệm cá nhân, thấu hiểu những bỡ ngỡ, nhầm tưởng của con trẻ khi bước chân vào thế giới thực – nơi không phải lúc nào cũng có vòng tay che chở của bố mẹ - kết hợp với những lời khuyên bổ ích và của người thân và đồng nghiệp, Chales J. Sykes đã tổng hợp và phát triểnt thành 50 điều trong cuốn sách.



50 điều trường học không dạy bạn không chỉ dành cho bạn trẻ, những người chuẩn bị bước vào đời mà còn dành cho các bạn phụ huynh và cả những người thầy. Ngay cả những người đã đi làm cũng sẽ học hỏi được nhiều điều thú vị từ những lời khuyên này. Hãy đọc để trưởng thành và thành công hơn nữa.



“Hành trang vào đời của các bạn trẻ, ngoài những bài học trong nhà trường, rất cần những lời khuyên hữu ích như 50 điều viết trong cuốn sách nhỏ này. Những kỹ năng sống tối thiểu đó sẽ giúp bạn tránh những vấp váp thường mắc phải khi mới bước vào đời và đạt đến thành công”.

Tải file mp3

Audio: "11 lời khuyên của Bill Gate"



Trong cuốn sách mà Bill Gates gửi cho học sinh tốt nghiệp THPT và sinh viên tốt nghiệp đại học, có một trang nêu 11 điều mà học sinh không thể học được ở nhà trường. 11 điều đó là:

1) Cuộc sống vốn không công bằng, chúng ta phải tìm cách thích ứng với nó.

2) Thế giới này không quan tâm đến cái tự ái trong bạn, mà chỉ mong bạn lập được thành tích trước khi bản thân bạn tự cảm thấy hài lòng.

3) Sau khi tốt nghiệp THPT, bạn không thể có ngay mức lương 40.000$/năm, không thể trở thành chủ tịch một công ty, sở hữu một chiếc xe hơi có lắp điện thoại cho đến khi bạn tự mình kiếm được những thứ ấy. Hãy bắt tay vào làm đi, thay vì ngồi đó mà mơ mộng.

4) Nếu cho rằng thầy giáo của bạn nghiêm khắc, hãy đợi đến khi đi làm bạn sẽ biết. Thầy giáo cũng đến lúc hết nhiệm kì công tác, nhưng ông chủ thì mãi mãi là ông chủ của bạn.

5) Món "bánh nướng kẹp thịt" rẻ tiền không hề làm giảm đi giá trị của bạn. Ông bà ta có định nghĩa khác về "bánh nướng kẹp thịt", họ gọi là thời cơ. Gặp những người khi sa cơ lỡ vận, đừng trở nên bất đắc chí mà hãy sử dụng nghịch cảnh như là một động lực để vươn lên.

6) Nếu bạn lâm vào cảnh khó khăn, đừng mải dằn vặt về những lỗi lầm đã qua mà hãy rút ra bài học từ đó. Hãy cố gắng đứng vững và đi lên từ những thất bại của mình

7) Trước khi sinh ra bạn, cha mẹ bạn không như hiện tại đâu. Họ trở nên như thế là vì bao năm nay họ phải kiếm tiền nuôi bạn, giặt quần áo cho bạn. Nếu muốn diệt "ký sinh trùng" đeo bám suốt đời ba mẹ bạn, trước tiên hãy diệt trừ con rệp trong tủ áo của bạn.

8) Nhà trường có thể không còn phân biệt học sinh giỏi hay kém nhưng cuộc sống thì có đấy. Một số trường đã từ bỏ điểm kém, chỉ cần bạn muốn tìm lời giải chính xác, nhà trường sẽ cho bạn vô số cơ hội. Nhưng cuộc sống thì không phải vậy. Bạn phải không ngừng nỗ lực vươn lên để tự khẳng định mình.

9) Cuộc sống không phân chia học kỳ, bạn sẽ không có kỳ nghỉ hè, cũng ít có ông chủ nào giúp bạn phát hiện chính mình. Bạn phải tự mình phát hiện những điều ấy.

10) Truyền hình không phản ánh cuộc sống chân thực. Trong cuộc sống hiện thực, người ta phải rời khỏi tiệm cà phê để đi làm việc chứ không phải ngồi đấy xem TV.

11) Bạn hãy cư xử tế nhị với kẻ là bạn cho là nhạt nhẽo, vô vị, vì có thể một ngày nào đó bạn có thể phải làm việc với một người vô vị như thế.

11 lời khuyên cuả Bill Gates không chỉ dành cho học sinh, sinh viên mà dành cho tất cả mọi người.

Từ saga.vn

tải file mp3

Chủ Nhật, 18 tháng 4, 2010

Kho sách của trường DH Kinh Tế

Bữa trước vào một diễn đàn tìm được kho sách của trường đại học kinh tế. Share với mọi người cùng tham khảo. Gồm các phần sau:

Nếu các bạn không thích down ở server trên thì có thể down ở thư mục link bên dưới (mediafire)

Unzip pass: Link
Sau khi down load về các bạn dùng phần mềm nối file rồi extract file. Phần mền kết nối file ở đây

Marketing Without Advertising: Inspire Customers to Rave About Your Business to Create Lasting Success

Title : Marketing without Advertising
Author : Michael Phillips and Salli Rasberry
Publisher : NOLO
ISBN : 0873397306
Edition : 2003
Format : chm
Size : 13.5 Mb
Page : 240 pages



Page I.1





Introduction







By the publisher







Take a look around your community and make a list of truly superior small businessesones you trust so thoroughly you would recommend them to your friends, your boss and even your in-laws. Whether your mind turns to restaurants, plumbers, plant nurseries or veterinarians, chances are good your list is fairly short.







Now think about all the ads for local businesses that fill your newspaper, clutter your doorstep, spew out of your radio, cover the back of your grocery receipts or reach you in dozens of other ways. How many of these businesses are on your list? More than likely, not many. In fact, I'll bet the most heavily advertised local businesses are among the businesses you never plan to patronizeor patronize againno matter how many 50%-off specials you are offered.







If, like me, you have learned the hard way that many businesses that loudly trumpet their virtues are barely average, how do you find a top-quality business when you need something? Almost surely, whether you need a roof for your house, an accountant for your business, a math tutor for your child or a restaurant for a Saturday night out, you ask for a recommendation from someone you consider knowledgeable and trustworthy.







Once you grasp the simple fact that what counts is not what a business says about itself, but rather what others say about it, you should quickly understand and embrace the message of this brilliant book. Simply put: The best way to succeed in business is to run such a wonderful operation that your loyal and satisfied customers will brag about your goods and services far and wide. Instead of spending a small fortune on advertising, it's far better to spend the same money improving your business and caring for customers.







It's the honest power of this honest message that made me excited to publish Marketing Without Advertising ten years ago. Uniquely among small business writers, Phillips and Rasberry were saying the same things I had learned as a co-founder of Nolo Pressthat the key to operating a profitable business is to respect what you do and how you do it. This means not only producing top-quality services and products, but demonstrating your respect for your co-workers and customers.







After many years of success, it's a double pleasure for Nolo to publish this new edition of Marketing Without Advertising. Yes, lots of things about small business marketing have changed in the interim. To mention just a few, today many of us routinely use fax machines and e-mail to keep close to our customers, and some of us have learned to use

Link download

Thứ Ba, 13 tháng 4, 2010

JDownloader support for download


This software supports for download from Rapidshare, Mediafire, KewlShare, .....It auto parse mediafire link folder and download.

Motivate to Win



Title: Motivate to Win
Author: Richard Denny
Quality: High
Format: PDF
Size: 869 kb
Page: 185


The Institute for Employment Studies has claimed that the
word ‘motivation’ is among the six most-used words in
company documents. It goes on to say that just because it is
used, it doesn’t mean to say that it is understood.

Beginning Bodybuilding

Title: Beginning Bodybuidling
Author(s): John Little
Publisher: Mc Graw Hill
Date: August 2007
Pages: 209
Size: 8.08Mb
Format: PDF
Quality: Excellent
Language: American English

Thứ Hai, 12 tháng 4, 2010

Bodybuidling Anaotmy

Title: Bodybuidling Anaotmy
Author(s): Nick Evans
Date: August 2007
Pages: 236
Size: 53.2 Mb
Format: PDF
Quality: Excellent
Language: American English

Preface: Walk into any gym these days and it's like Disneyland for bodybuilders. You'll discover
endless rows of exercise machines and free weights for every musde in your body.
Your challenge is to navigate through the maze of machines and weights, select the exer-
cises you need, and pump your way across the gym to the finish line. Upside: The winner
walks away with a custom-built body. Downside: No instructions, no dues, no map, and
no rules. But with no guidance, surely you're doomed to drculate around the gym, stuck
in a holding pattern. Then one lucky day, in a moment of darity, you realize a piece of the
puzzle is missing. ..

How to think like Einstein


I found this book and shared it with you. Link here

Set your voice free

That book help you to improve your voice.

100 ways to motivate for yourself


This book is helpful for everybody.

Thứ Tư, 20 tháng 1, 2010

10 dự đoán về Google Android trong năm 2010


Với sự ra đời của Motorola Droid và gần đây là Google Nexus One, đó là bằng chứng cho một tương lai đầy hấp dẫn của Google Android năm 2010. Nền Android đã có thâm niên 2 năm và mới đây đã chuyển sang phiên bản 2.1.

Đặc biệt với sự ra đời của Nexus One là điện thoại với phần cứng, phần mềm tốt hớn và gia tăng những phần mềm tiện ích cho người dùng.

Sau đây là những tiên đoán về những gì sẽ diễn ra với Google Android trong năm 2010

1. Nhiều thiết bị điện thoại cho Google Android

Hiển nhiên như chúng ta đã biết ngoài HTC, SamSung, LG, Motorola đã ra đời những sản phầm với hệ điều hành Android. Trong năm nay, sẽ có nhiều hãng khác sẽ sử dụng nền Android như IBM,...

HTC đầu tiên cho ra đời G1 và G2, và không thể quên gần đây họ cho ra đời Hero và Droid Eris. Nhìn chung HTC đã cho thấy họ là một tập đoàn lớn trong thiết kế smart phone. Mặc dù tồn tại những lỗi với G1 Dream nhưng họ cũng đút kết những kinh nghiệm và những thư viện khổng lồ để phát triển dòng sản phẩm của chính họ trên Android Platform. Theo tôi trong năm tới HTC có thể sẽ khai thác đội ngũ lập trình viên ở nước thứ 3 như Việt Nam chúng ta. Motorola cũng là một đối thủ đáng cạnh tranh với HTC với Droid (mặc dù vẫn còn những hạn chế).

Tại thời điểm này, tương lại của thị trường di động Android sẽ phát triển hơn nhiều. Theo Wikipedia's hiện tại danh sách phát triển điện thoại Android là những nhà sản xuất vô danh nhưng chúng ta sẽ thấy nhưng thông báo của những hãng lớn về Android trong một vài tháng tới.

Và gần đây chúng ta cũng nghe đến Sony Ericsson's XPERIA X10, với 1Ghz bộ xử lý, 8MP camera và mà hình 4 inch. Tất cả là tốt hơn với Droid, và nó chắc rằng dấu hiệu sáng tạo đang đến với platfrom.

T-Mobile được chúng ta biết đến với G2 với bàn phím được trang bị hơn Cliq. Spint đã có ở Hero. Sự kiện AT&T với sự lớn mạnh của thiết bị cầm tay Dell.

2. Phát triển Ứng dụng bùng nổ, và vượt qua số ứng dụng iPhone

Thật khó để thấy thị trường Android sẽ có nhiều ứng dụng trong năm 2010. Những gì đã đưa tôi khẳng định họ có tiềm năng lớn mạnh như vậy? Chúng ta sẽ thấy rằng tương lai về nghiệp dư và độc lập phát triển cho Android, nhưng tôi cũng thấy nhiều release từ những công ty phần mềm lớn và nhiều trao đổi của các ứng dụng iPhone phổ biến.

Droid và Nexus One là minh chứng rõ ràng với nhiều nhà phát triển có tên tuổi đã đi vào khai thác lĩnh vực Android platform.

3. Android sẽ trình làng nhiều thiết bị khác

Một thuận lợi của Android là nó không giới hạn trong cellphone. Google đã tạo ra một hệ điều hành lightweight mà nó có thể vận hành tốt trên các thiết bị khác. Chúng ta đã thấy Anroid trên Archos 5 portable media, cũng như Barnes and Noble Nook ebook Reader. Trong năm 2010 chúng ta sẽ thấy những netbooks (Acer đã có kết hoạch) và tôi sẽ không ngạc nhiên khi thấy trên internet những thiết bị đó.

4. Nhiều uyển chuyển và ổn định trên Android OS

Lần nữa, một vấn đề dường như rõ ràng, một điểm đáng lưu ý: 2010 sẽ là năm Android trường thành từ những phần khởi đầu không mấy khả quan. Android 2.1 đã ra đời trông tốt hơn nhiều so với những phiên bản trước nhưng cũng còn một tí không hoàn thiện. Chúng ta có thể trông chờ vào tương lai. Khi OS trưởng thành, chúng ta sẽ thấy những ứng dụng phức tạp được phát triển, bao gồm những hỗ trợ cho game 3D.

5. Phần cứng Android sẽ hoàn thiện nhanh hơn iPhone

Một diện mạo của cuộc chiến giữa Android với iPhone đó là Android sẽ không hụt hơi với chu khi làm mới hằng năm của Apple's. Các nhà máy sản xuất thiệt bị cầm tay có thể cho ra đời thiết bị bất cứ khi nào họ thích, điều đó có nghĩa là họ có thể tạo ra mỗi sản phần trong 1 năm. Sony XPERIA X10 ra đời và đành bại phần cứng Droid, và ngay khi nó chưa đưa ra ngày ra đời chính thức, chúng ta biết rằng nó ra đời vài tháng trước khi Droid phát hành

Chúng ta có thể thấy 6 tháng từ khi iPhone 3GS ra đời, và Droid đã hỗ trợ camera có megapixel cao hơn, màn hình lớn hơn và quản lý bàn phím thực và dày hơn của iPhone.

6. Nhiều dịch vụ hỗ trợ hơn từ Google

Định vị của Google Map hỗ trợ đầy đủ trong việc chạy trên Droid hoàn toàn an toàn. Google biết họ có ứng dụng hấp dẫn trong tay họ và có nhiều thuận lợi trong việc bán ra thị trường của Droid. Ứng dụng yêu cầu phải viết trên Android 2.0 và hiện tại Droid là điện thoại duy nhất trên thị trường với đặt tính đó (thời điểm chưa ra đời Nexus One)

Chúng ta sẽ chắn chắn thấy rằng Google Maps Navigation sẽ có trên thiết bị Android 2.0, và Apple sẽ kết thục việc mang đó đến iPhone.

Điều quan trọng ở đây rằng Google Maps Nav được ưu tiên cho Android trước, và sẽ trải qua vài tháng mới xuất hiện trên iPhone


7. Không do dự hỗ trợ multi-touch

Google cần phải loại bỏ sự cẩn thận trong bước đi, lớn lên một số cojone và kéo theo Palm khi nó đến với multi-touch hỗ trợ trên Android. Multi-touch quả thực đã được tích hợp trong Android 2.0, nhưng ngay cả khi với Droid vẫn còn hạn chế trong việc dùng 2 ngón tay để zoom cho web browsing, Google Máp và ứng dụng khác. Mặc hạn chế này tồn tại trên những phần mềm có sẵn trong Droid và đối với ứng dụng khác thì hoạt động tốt.

Khi cho thiết bị không phải là Android 2.0, nó hiện tại nâng cấp firmware ở nhà máy để hỗ trợ multi-touch. HTC đã làm điều này với HTC Hero và Eris - đó là châm biếm có ý nghĩa bởi vì Eris là được bán rẻ hơn, ít đặc tính hơn Droid.

8. Thị trường Android thịnh hành

Google là người đưa ra Android và những nhà sản xuất, sẽ không yên lặng như những gì trong năm qua. Thật là hợp lý với một lượng lớn các thiết bị Android ra đời năm 2010

9. Trông chờ sự chuyển đổi từ Blackberry và Windows Mobile

Nhiều suy nghĩ về những hạn chế lớn của iPhone đối với Google's là nỗ lực mã nguồn mở, nhưng chúng ta không thể quên rằng một thị phần đáng kể của người dùng smartphone đang là điện thoại Blackberry và Windows Mobile

Cả RIM và Microsof đang lao vào cuộc chiến để giữ khách hàng với cuộc cách mạng của smartphone hiện đại. Blackberry Storm 2 quả thực là tốt hơn tổ tiên trước, nhưng nó không là làm người dùng nhảy tràn bộ nhớ, cho phép một mình chuyển đổi phone. Phiên bản Windows Mobile 6.5 đã có những tiếng hạn chế lớn, và chúng ta sẽ không thấy sự thụt lùi trong phiên bản 7.0 ra đời trong năm 2010.

Với những hạn chế trên, khách hàng sẽ dần chuyển sang dùng Android phone.

10. Nhiều khách hàng ở bở mặt chung

HTC Android vởi giao diện Sense UI trên Hero và Eris, đó sẽ không là lần cuối cùng họ làm thế.

Chúng ta hoài nghi rằng sẽ thấy nhiều nhà sản xuất đặt Anroid cong duy nhất trên sản phẩm của họ trong năm 2010, nếu được ra đời từ đám đông. Với nhiều điện thoại ra đời, những nhà sản xuất có sự cách tân về phần cứng và tạo ra những giao diện đẹp đó là cách họ thu hút khách hàng.

Như đã quan tâm ở trên Sony Ericsson XPERIA X10.

Cuối cùng

Với một vài tiên đón trên phần lớn sẽ diễn ra, trong khi những thứ khác vừa là hi vọng. Những gì diễn ra trong năm 2010 là những gì chúng ta đang quan tâm đến thiết bị di động. Microsoft cần đảm bảo ra đời Windows Mobile 7, và RIM cần xem lại những gì trên hành tinh họ đang làm...

Android đang là sự hấp dẫn nhất của tất cả.



Tham khảo (pingdom.com)

Thứ Ba, 12 tháng 1, 2010

Giới thiệu GLSurfaceView

GLSurfaceView là một lớp API mới trong Android 1.5. GLSurfaceView làm các ứng dụng OpenGL ES dễ dàng để viết bởi vì:
  • Cung cấp code dính để kết nối OpenGL ES với hệ thống View
  • Cung cấp code dính để làm OPenGL ES làm việc với chu kỳ sống Activity
  • Làm dễ dàng trong việc lựa chon định dạng khung đệm pixel tương thích
  • Cung công cụ debugging dễ dùng để lần theo OpenGL ES API gọi và kiểm tra lỗi.
    GLSurfaceView là một nền tốt cho việc xây dựng ứng dụng mà có dùng OpenGL ES. Game hành động 2D hoặc 3D sẽ là một trường hợp đáng quan tâm nhất, và hình ảnh ứng dụng sẽ sống động hơn giốp như Google Maps StreetView.

Ứng dụng đơn giản nhất của GLSurfaceView

Đây là nguồn code cho ứng dụng đơn giản nhất của OpenGL ES:

java:

  1. package com.example.android.apis.graphics;

  2. import javax.microedition.khronos.egl.EGLConfig;
  3. import javax.microedition.khronos.opengles.GL10;

  4. import android.app.Activity;
  5. import android.opengl.GLSurfaceView;
  6. import android.os.Bundle;

  7. public class ClearActivity extends Activity {
  8. @Override
  9. protected void onCreate(Bundle savedInstanceState) {
  10. super.onCreate(savedInstanceState);
  11. mGLView = new GLSurfaceView(this);
  12. mGLView.setRenderer(new ClearRenderer());
  13. setContentView(mGLView);
  14. }

  15. @Override
  16. protected void onPause() {
  17. super.onPause();
  18. mGLView.onPause();
  19. }

  20. @Override
  21. protected void onResume() {
  22. super.onResume();
  23. mGLView.onResume();
  24. }

  25. private GLSurfaceView mGLView;
  26. }

  27. class ClearRenderer implements GLSurfaceView.Renderer {
  28. public void onSurfaceCreated(GL10 gl, EGLConfig config) {
  29. // Do nothing special.
  30. }

  31. public void onSurfaceChanged(GL10 gl, int w, int h) {
  32. gl.glViewport(0, 0, w, h);
  33. }

  34. public void onDrawFrame(GL10 gl) {
  35. gl.glClear(GL10.GL_COLOR_BUFFER_BIT | GL10.GL_DEPTH_BUFFER_BIT);
  36. }
  37. }




Trong chương trình này không làm nhiều: Nó xóa màn hình thành màu đen trên mỗi frame. Nhưng nó hoàn toàn là một ứng dụng OpenGL, một cách chính xác nó được hiện thực trong chu kỳ code Android Activity. Nó sẽ ngừng (pause) đưa ra khi Activity được dừng, và trở lại khi Activity được trở lại (resumed). Bạn có thể dùng ứng dụng ứng dụng này như cơ bản cho chương trình không tương tác. Chỉ cần thêm OpenGL gọi đến phương thức
java:
  1. ClearRenderer.onDrawFrame
.

Cần nhớ rằng
java:
interface có ba phương thức:

Phương thức
java:
được gọi để bắt đầu rendering, và bất cứ khi nào OpenGL ES đang vẽ ngữ cảnh (drawing context) phải khởi tạo lại. (Việc vẽ ngữ cảnh là thường mất và khở tạo lại khi Activity paused và re sumed).
java:
là một nơi tốt để tạo ra tài nguyên OpenGL giống kết cấu.

Phương thức
java:
được gọi khi bở mặt thay đổi kích thước. Nó là một nơi tốt để thiết lập Viewport OpenGL của bạn. Bạn có thể cũng thiết lập camera ở đây, nếu nó là cố định camera thì sẽ không di chuyển xung quanh khung cảnh.

Phương thức
java:
được gọi ở mỗi frame, và có trách nhiệm cho việc vẽ quang cảnh. Bạn sẽ bắt đầu gọi
java:
để xóa framebuffer, được theo ở OpenGL ES khác gọi để vẽ quang cảnh hiện tại

User Input như thế nào?

Nếu bạn muốn tương tác với ứng dụng giống như game, bạn sẽ đặc trưng đến lớp con GLSurfaceView, bởi vì nó là một cách dễ dàng để đạt được các sự kiện vào. Đây là một ví dụ dài hơn để các bạn thấy nó làm như thế nào:

java:

  1. package com.google.android.ClearTest;

  2. import javax.microedition.khronos.egl.EGLConfig;
  3. import javax.microedition.khronos.opengles.GL10;

  4. import android.app.Activity;
  5. import android.content.Context;
  6. import android.opengl.GLSurfaceView;
  7. import android.os.Bundle;
  8. import android.view.MotionEvent;

  9. public class ClearActivity extends Activity {
  10. @Override
  11. protected void onCreate(Bundle savedInstanceState) {
  12. super.onCreate(savedInstanceState);
  13. mGLView = new ClearGLSurfaceView(this);
  14. setContentView(mGLView);
  15. }

  16. @Override
  17. protected void onPause() {
  18. super.onPause();
  19. mGLView.onPause();
  20. }

  21. @Override
  22. protected void onResume() {
  23. super.onResume();
  24. mGLView.onResume();
  25. }

  26. private GLSurfaceView mGLView;
  27. }

  28. class ClearGLSurfaceView extends GLSurfaceView {
  29. public ClearGLSurfaceView(Context context) {
  30. super(context);
  31. mRenderer = new ClearRenderer();
  32. setRenderer(mRenderer);
  33. }

  34. public boolean onTouchEvent(final MotionEvent event) {
  35. queueEvent(new Runnable(){
  36. public void run() {
  37. mRenderer.setColor(event.getX() / getWidth(),
  38. event.getY() / getHeight(), 1.0f);
  39. }});
  40. return true;
  41. }

  42. ClearRenderer mRenderer;
  43. }

  44. class ClearRenderer implements GLSurfaceView.Renderer {
  45. public void onSurfaceCreated(GL10 gl, EGLConfig config) {
  46. // Do nothing special.
  47. }

  48. public void onSurfaceChanged(GL10 gl, int w, int h) {
  49. gl.glViewport(0, 0, w, h);
  50. }

  51. public void onDrawFrame(GL10 gl) {
  52. gl.glClearColor(mRed, mGreen, mBlue, 1.0f);
  53. gl.glClear(GL10.GL_COLOR_BUFFER_BIT | GL10.GL_DEPTH_BUFFER_BIT);
  54. }

  55. public void setColor(float r, float g, float b) {
  56. mRed = r;
  57. mGreen = g;
  58. mBlue = b;
  59. }

  60. private float mRed;
  61. private float mGreen;
  62. private float mBlue;
  63. }




Ứng dụng xóa màn hình mỗi frame. Chương trình này sẽ xóa màu sắc dựa trên tọa độ của sự kiện touch. Chú ý cách dùng của queueEvent() trong ClearGLSurfaceView.onTouchEvetn(). Phương thức queueEvent() là được dùng an toàn giữa giao tiếp UI thread và rendering thread. Nếu bạn thích bạn có thể dùng một vài kỹ thuật giao tiếp khác của java, như là phương thức đồng bộ trên lớp Render. Nhưng hàng đợi sự kiện là thường là cách đơn giản nhất.

Ứng dụng khác của GLSurfaceView
Bạn có thấy việc xóa màn hình có vất vả không? Bạn có thể tìm nhiều ví dụ hập dẫn trong API Demos của SDK. Tất cả ví dụ OpengGL ES đã được chuyển sang dùng GLSurfaceView view.
  • GLSurfaceView - xoay tam giác
  • Kube - Demo một khối puzzle
  • Translucent GLSurfaceView - làm thể nào để hiện đồ họa 3D trên nền mờ
  • Textured Triangle
  • Sprite Text -
  • Touch Rotate

Lựa chọn một Surface

GLSurfaceView giúp bạn chọn loại surface để render. Các loại thiết bị Android khác nhau sẽ hỗ trợ loại surface khác nhau, sẽ không cùng chung tập hợp. Điều này là một vấn đề nghiêm ngặc trong việc chọn surface tốt nhất cho mỗi thiết bị. Về mặc định GLSurfaceView cố gắng lựa chọn surface mà nó gần nhất có thể để một 16-bit RGB frame buffer với một 16-bit buffer sâu. Dựa trên ứng dụng bạn có thể thay đổi. Ví dụ, trong Translslucent GLSurfaceView cần một kênh Alpha thứ tự để render dữ liệu mờ. GLSurfaceView cung cấp một phương thức setGLSurfaceChooser() để cho người phát triển điều khiển toàn bộ surface được chọn:
Quote:
Trích từ Android blog
setEGLConfigChooser(boolean needDepth)
Choose a config that's closest to R5G6B5 with or without a 16-bit framebuffer
setEGLConfigChooser(int redSize, int greenSize,int blueSize, int alphaSize,int depthSize, int stencilSize)
Choose the config with the fewest number of bits per pixel that has at least as many bits-per-channel as specified in the constructor.
setEGLConfigChooser(EGLConfigChooser configChooser)
Allow total control over choosing a configuration. You pass in your own implementation of EGLConfigChooser, which gets to inspect the device's capabilities and choose a configuration.
Tiếp tục với Rendering so với Render khi bẩn
Phần lớn ứng dụng 3D, như game or sự giả lập, là liên tục với sự sống động. Nhưng một vài ứng dụng 3D là có nhiều hành động lặp lại. Cho tất cả các loại của ứng dụng, mặc định GLSurfaceView tiếp tục vẽ lại màn hình đó là sự lãng phí thời gian. Nếu bạn đang phát triển một ứng dụng có các hoạt động lặp lại phương thức GLSurfaceView.setRenderMode(RENDERMODE_WHEN_DIRTY), tắt sự tiếp tục sóng động. Khi đó bạn gọi GLSurfaceView.requestRender() khi bạn muốn re-render.

Giúp đỡ với việc debugging

GLSurfaceView có nắm giữ một đặc tính built-in cho việc debugging ứng dụng OpenGL ES: phương thức GLSurfaceView.setDebugFlags() có thể được dùng để logging và/hoặc kiểm tra lỗi trên OpenGL ES gọi. Gọi phương thức này trong việc xây dựng GLSurfaceView's của bạn trước khi gọi setRender:
java:

  1. public ClearGLSurfaceView(Context context) {
  2. super(context);
  3. // Turn on error-checking and logging
  4. setDebugFlags(DEBUG_CHECK_GL_ERROR | DEBUG_LOG_GL_CALLS);
  5. mRenderer = new ClearRenderer();
  6. setRenderer(mRenderer);
  7. }




Nguồn Android blog

Giới thiệu Android NDK 1.5_r1

Android NDK 1.5_r1 đã ra đời lâu nay mình sẽ dịch lại bài viết từ blogspot của "Android developer" về những đặc điểm chung của Android NDK 1.5_r1.

Như các bạn đã biết, ứng dụng Android chạy trên máy ảo Dalvik. NDK cho phép những nhà phát triển hiện thực những phần ứng dụng của họ bằng việc sử dụng ngôn ngữ native-code như C và C++. Điều năng mang đến nhiều tiện lợi cho các ứng dụng.

NDK cung cấp:
  • Tập hợp các công cụ và file build dùng để sinh thư viện code từ nguồn C và C++.
  • Cách để nhúng thư viện native trong ứng dụng files (.apks) để có thể triển khai trên thiết bị Android.
  • Tập hợp hệ thống native header và thư viện mà sẽ được hỗ trợ cho các phiên bản tương lại của Android, đang bắt đầu từ tài liệu 1.5, ví dụ và bài học.

Phiên bản này của NDK hỗ trợ tập lệnh máy ARMv5TE và cung cấp các header cho:
  • libc, thư viện C chuẩn
  • libm, thư viện chuẩn math
  • JNI interface
  • libz, thư viện cho việc nén file Zlib
  • liblog, dùng để gửi thông điệp logcat đến kernel.

Luôn luôn nhở rằng sử dụng NDK sẽ không phải cho toàn bộ ứng dụng Android. Là một nhà phát triển (developer), bạn sẽ cần phải cân bằng các lợi ích để hạn chế những nhược điểm.

Với những câu hỏi liên quan đến NDK, bạn có thể tham gia vào diễn đàn Android NDK (English).

(Nguồn android-developers.blogspot.com)


Thứ Hai, 4 tháng 1, 2010

Một số website hữu ích

Tra cứu thuật ngữ tin học:
Thư viện phần mềm
Thư viện code