معرفی کتاب و ویدیو برای برنامه نویسی اپلیکیشن (user space)

لطفا کتاب ها و ویدیوهای مفیدی که برای برنامه نویسی اپلیکیشن توی امبدد لینوکس می‌شناسید رو معرفی کنید.
به خصوص موضوعاتی مثل Qt، رابط گرافیکی، برنامه های مالتی مدیا، صوتی و تصویری، پردازش تصویر و…

1 پسندیده

سلام.
سوال شما خیلی کلی هست اما میشه بهش جواب داد !
من شخصا کتاب رو همیشه به منابع دیگه ترجیح میدم و چندتا منبع از همین جنس بهتون معرفی میکنم
کتاب اول The Linux programming interface هست


این کتاب اومده و نحوه ارتباط گرفتن با بخش های مختلف سیستم عامل لینوکس رو از طریق کد C توضیح داده.
پیشنهاد میشه که 100 صفحه اول این کتاب که مفاهیم کلی و کاربردی هست خونده بشه و بقیه سرفصل ها هم یه چند بار بررسی بشه که در زمان لازم برگردید سراغش و هر جا رو که لازم داشتید بخونید در موردش.

کتاب پیشنهادی بعدی GNU/Linux Rapid Embedded Programming هست


این کتاب مفاهیم کاربردی مرتبط با بخش های مختلف یک سیستم امبددلینوکسی و درایور های سخت افزار رو توضیح داده (مباحثی مثل device tree , bootloader , spi , gpio , eth و …)
پیشنهاد میشه این فصل ها حتما حتما کامل خونده بشه

  • Chapter 2: Managing the System Console
  • Chapter 3: C Compiler, Device Drivers, and Useful Developing Techniques
  • Chapter 5: Setting Up an Embedded OS

غیر از اون هم بقیه فصل های مرتبط به سخت افزار ، زمانیکه میخواید با اون بخش کار کنید حتما یه سری به توضیحات این کتاب بزنید ، مثلا وقتی میخواید با gpio کار کنید بخش gpio رو بخونید یا برای usb بخش مربوطه و …

کتاب بعدی هم مربوط به qt هست Hands-On Embedded Programming with Qt
Screenshot from 2023-01-18 23-50-31

این کتاب به بررسی نحوه کانفیگ و اضافه کردن یک چیپ در QtCreator میپردازه و بعد از اون به بررسی کدنویسی داخل qt میپردازه ، همچنین نکات خیلی کاربردی در مورد بهینه کردن برنامه برای سیستم های امبدد و دیباگ کردن و … داره

3 پسندیده

مهندس ممنون

به خصوص اینکه درباره ساختار کتاب و فصل های مهم توضیح دادین عالیه…

1 پسندیده

من برای پیدا کردن آموزش های بروز در هر زمینه ای و هر رشته ای از این شیوه استفاده میکنم:
1- به سایت https://www.udemy.com میرم
2- کلمات کلیدی مد نظرم رو سرچ میکنم (مثلا برای شما که در زمینه امبدد لینوکس آموزش میخواین میتونین سرچ کنین Linux Embedded)

مثال:
https://www.udemy.com/courses/search/?src=ukw&q=Linux+Embedded

3- از بین آموزش های مختلفی که میاد با توجه به میزان امتیازشون چند مورد رو انتخاب میکنم
4- توی اینترنت اسم آموزش هایی که انتخاب کردم رو سرچ میکنم و در ابتدا متن سرچ کردن دو کلمه “آموزش” و “دانلود” رو اضافه میکنم
5- از بین سایت هایی که این آموزش رو رایگان برای دانلود گذاشتن یکی رو انتخاب میکنم و آموزش رو دانلود میکنم

نکته: معمولا سایت https://downloadly.ir اکثر آموزش هارو برای دانلود گذاشته

مثلا:

6- فایل های دانلود شده رو که معمولا .zip یا .rar هستن رو اکسترکت (استخراج) میکنم
7- توی فایل های استخراج شده میگردم تا ببینم کنار هر فایل ویدیویی یک فایل زیرنویس انگلیسی هست یا نه (اگر نبود دوباره اون آموزش رو از یه سایت دیگه دانلود میکنم تا فایل زیرنویس انگلیسی داشته باشه و البته همیشه زیرنویس انگلیسی دارن)
8- برای هر فایل ویدیویی یه فایل با فرمت .srt میسازم و اسمش رو همون اسم فایل ویدیویی میزارم و انتهاش کلمه “farsi” رو اضاف میکنم
9- فایل زیرنویس انگلیسی رو باز میکنم و کل محتویاتش رو کپی میکنم و سپس به سایت گوگل ترانسلیت به آدرس

میرم و تبدیل ترجمه از انگلیسی به فارسی رو انتخاب میکنم و بعد کل محتویات فایل زیرنویس رو که کپی کرده بودم اینجا پیست میکنم و سپس کل ترجمش رو کپی میکنم و توی فایل .srt که ساخته بودم پیست میکنم
نکته: اگر فایل زیرنویس خیلی زیاد بود خود گوگل ترانسلیت به چند بخش تقسیم میکنه شما موقع کپی و پیست کردن هیچ تغییری توی متن مثل اینتر زدن یا فاصله اضاف کردن ندید و دقیقا چیزی که دانلود میکنین رو در ادامه متن قبل که در فایل .srt پیست کرده بودین دوباره پیست کنین اما اگر اینتر بزنین ترجمه خراب نشون داده میشه یا کلا نشون داده نمیشه.
10- حالا هم فایل آموزشی رو دارم و هم فایل زیرنویس فارسیش رو پس میشینم نگاه میکنم و نکته برداری میکنم.

نکته: این آموزش های سایت udemy میشه گفت جدیدترین و بروزترین آموزش های دنیا هستن.

5 پسندیده

خوب خدا رو شکر تنها نیستم… منم دقیقا تا مرحله 6 رو مثل شما انجام میدم (حتی دقیقا همین کلمه دانلود و آموزش رو میذارم اولش)
ولی دیگه دنبال زیرنویس نمیرم… سعی میکنم از روی کارهایی که توی ویدیو میکنه بفهمم چی میگه :grinning:

1 پسندیده

چه جالب!
منم فکر میکردم فقط خودمم که اینکار رو میکنم
از آشنایی با شما خوشحالم :grinning:

1 پسندیده