Abstract Engineering | الهندسة المجردة
Abstract Engineering | الهندسة المجردة
  • Видео 11
  • Просмотров 8 646
Object-Oriented Programming Is The Root Of All Evil
Exposing object-oriented programming harms the field of software engineering and Learning about the bad practices, conventions, and flawed ideology of object-oriented programming/design.
This information in this video is taken from the work of Brian Will, Mike Acton, Casey Muratori, and Jonathan Blow.
Object-Oriented Programming Is Bad: ruclips.net/video/QM1iUe6IofM/видео.htmlsi=kEc_P1dsd_jYotr-
Data-Oriented Design: ruclips.net/video/rX0ItVEVjHc/видео.htmlsi=4EVxQ7MLhLQOgryY
Clean Code Horrible Performance: ruclips.net/video/tD5NrevFtbU/видео.htmlsi=LWqsRfbnMZFUwrWj
Preventing The Collapse Of Civilization: ruclips.net/video/ZSRHeXYDLko/видео.htmlsi=gMuW02xdevUnybqB
Discord: discord.gg/NMQhRK5R...
Просмотров: 3 973

Видео

The Abstract Language - A New Era Of Software & Hardware Development
Просмотров 3,3 тыс.19 часов назад
Announcing the "Abstract" language. A new language that will make it useless to learn any other language. A language for both software and hardware engineers. A language that will work for building high-performance software, web apps, scripting, meta programming, concurrent and parallel programming, digital hardware description, analog behavioral modeling, mixed-signal behavioral modeling and h...
Mohamed M Atalla - The Egyptian Who Ignited the Crystal Fire
Просмотров 586Месяц назад
This is the story of Dr.Mohamed M. Atalla the inventor of the "Surface Passivation by Thermal Oxidation" process and the "Metal Oxide Semiconductor Field Effect Transistor" aka the "MOSFET" which is responsible for the development of the information age.
Learning TCL - Live Programming - Abstract Engineering | الهندسة المجردة
Просмотров 217Месяц назад
Live programming stream TCL
C++ 001 - Part 2 - Hello World
Просмотров 66Год назад
Using C 23 print header/function to output "Hello, World!" to the console.
C++ 001 - Part 1 - Hello World
Просмотров 186Год назад
فى الفيديو هنعمل اول برنامج فى لغه السي بلس لس و نخرج فيه جمله "مرحبا للعالم" على الشاشه In this video, we learn how to make our first program in C to output the sentence "Hello, World!" to the console.

Комментарии

  • @makadi86
    @makadi86 21 минуту назад

    لو هتستخدم سيمي كولن يبقى تسنخدمها في كله يا اما ما تستخدمهاش بالنسبة للريترن نفس الكلام يا تستخدمها فى كل الدوال يا ما تستخدمهاش. اللغات اللي بتبقي مخلطة دي ما بتقباش حلوه.

    • @Abstract-Engineering
      @Abstract-Engineering 9 минут назад

      ما تحديد دا مش بالسهولة دي عشان عليه تبعيات لحاجات تانية و بعدين مش شرط انته مبتكتبش ال semicolon مثلا في اخر ال for و معندكش مشاكل في لغة غالبا

  • @makadi86
    @makadi86 25 минут назад

    هو أنت عامل جروب ديسكورد أو حاجة ولا كل التواصل مع الناس هنا بس؟

    • @Abstract-Engineering
      @Abstract-Engineering 17 минут назад

      موجود فى ال description

    • @makadi86
      @makadi86 6 минут назад

      @@Abstract-Engineering انا دورت عليها مالقتوش ما تبعتهولي أسهل

    • @Abstract-Engineering
      @Abstract-Engineering 22 секунды назад

      لسة معدلة دلوقتى تشك علي اي فيديو او لايف هتلاقيه باذن الله

  • @positivewords77
    @positivewords77 58 минут назад

    يا اخي اولا شكرا على الموضوع العميق ولكن من فضلك اللغة التي تمزج العربي بالانجليزي مزعجة جدا ومتعبة اما ان تتحدث العربية بلهجتك المصرية او بالفصحى او ان تتحدث بالانجليزي طبعا انا لا اقصد المصطلحات مثل كلاس واوبجكت وغيرها ولكن اقصد المبالغة تحدث الانجليزي افضل من فضلك طالما ان العربي عندك ضعيف لهذه الدرجة ارجو ان لا تنزعج ولكن فعلا هذه الطريقة مزعجة ومحزنة

  • @superlinux
    @superlinux Час назад

    سؤال يطرح نفسه: هل عندك عداء مع اللغة العربية ؟!؟ هذه فعلا مرض و لازم تعالجه. معظم الكلام كان ممكن تقوله بالعربي بدون اي كلمة انجليزي متعربة. يلا بلش اشتغل على الموضوع هذا و عالجه. سلام. فيديو موفق لولا اللغة.

  • @TheError17191
    @TheError17191 Час назад

    حلو المحتوى العميق دة بالعربي.. عاش 🎉 مع اني مش متفق مع العنوان و بعض الافكار بس جميل عموما اننا نطرح مناقشات فلسفية زي كدة ❤ شيء ملهم في العموم 👏

  • @Shalaby-VBS
    @Shalaby-VBS 2 часа назад

    كل ProgrammingType وليه مميزاته وعيوبه .. أنا متفق في معظم كلامك والدليل إني كنت كاتب Post كامل على LinkedIn عن أضرار الـ Inheritance وإنها ممكن تبقى كارثة للمشاريع ،ولكن قصة إني أشيطن الـ OOP وكلها عيوب -مش لطيف صراحة- + ده معناه إنك مجربتهاش وشغلك كله Super-Professional وبتشتغل على GodObjects وده مظنوش لإن صوتك وسنك صغير يعني كلامك مكتسب خصوصًا إنك ذكرت مشاكل خاصة بالناس اللي بتبرمج من أيام ١٩٩٠ أيام الـ WebApps كانت صعبة أصلا. كل دول Tools والشاطر اللي يعرف يستخدمهم صح وإمتى .. لإني لو مشيت بمبدأ النقد المطلق بتاعك ممكن من بكرة اكرهك في الـ Functional Programming تاني ... كل Type وليه مجالاته وبيحل مشاكل معينة وكل حاجة فيها مميزات وعيوب والدنيا دايمًا بتتغير. أنا مش بنتقدك شخصيًا انت شاطر ومجتهد اللهم بارك ،لكن منتقد طريقة النقد. وده لينك الـ Post للي حابب يقرأه 👇 www.linkedin.com/posts/ahmed-shalaby-21196521b_%D8%A7%D9%84%D8%B3%D9%84%D8%A7%D9%85-%D8%B9%D9%84%D9%8A%D9%83%D9%85-flaws-of-inheritance-activity-7174012996845727744-Ppxk?

  • @MohammedAbdelkrimGuendouz
    @MohammedAbdelkrimGuendouz 3 часа назад

    اعطنا مثال لمشروع متكامل وليس مثال بسيط بدون OOP

  • @SaudBako
    @SaudBako 3 часа назад

    10:30 These rules mirror ones from a video with a similar title. Messaging ≠ shared state. Messages strike a balance between full sharing and isolation. Objects aren’t just state-they provide behavior. People obsess over state but forget behavior (think strategy pattern). Objects can send references. E.g. a DNS-like object that provides addresses of other objects. I’m genuinely curious-where are these rules coming from? 11:20 Objects have agency over their state. They can ignore bad messages or call the “cops” (another object). The very example at 16:10 treats objects as mere data structures. Don’t leave the door open (setters/getters) and wonder why encapsulation broke. 2:22 excludes inheritance, yet 13:49 dedicates point #2 to it. 😶‍🌫 14:44 True, but I'm fine with any paradigm that adds overhead but lets me easily adapt to changing requirements and make a profit. 16:56 This point is shocking. It blames the current state of software on OOP 🥴 We agreed that OOP has been largely misunderstood. So it couldn't have had a big role. 19:30 My bet is: today's mega-giant, mechanistic, clockwork designs are hard to parallelize for multiple developers (integration bugs) and multiple cores (low performance). Subscribed ❤ Can't wait for more!

  • @ahmedtarek7384
    @ahmedtarek7384 3 часа назад

    انا قعدت ربع ساعه بسمع عشان افهم برضه ايه الغرض من الموضوع؟اصل ما كل حاجة ليها pros,cons اصل يعني عاوز تعمل حاجة بتحل كل المشاكل بتاعت اللغات التانية ؟طيب انت هتيجي على ايه مهو انت بتيجي على حاجة اصل لو الموضوع بسيط كده مكنا عملنا لغة واحده وخلاص ايوه الحاجة فيها مشاكل عشان كده في لغات برمجة كتير فعشان كده بنختار الحاجة المناسبة للموقف الاحنا فيها وموضوع ال oop غريب برضه مهو كل حاجة ليها pros و cons على حسب انت بتنبني ايه وشغال على ايه what is your experience?

    • @Abstract-Engineering
      @Abstract-Engineering 3 часа назад

      الفرق ان في pros و اا cons ممكن تكون حقيقية بسبب المجال و ممكن تكون بسبب ان ال design بتاع ال language نفسة بي force عليك حاحات معينة فا انا شايف ان فى حاجات كتير المشكلة فيها بسبب ال language design مش المجال بتاع استخدامها. زي ما مثلا rust هتكون لغة سيئه في ال embedded systems لانها بت enforce ال safe code بس ال embedded system مش safe by default او ان جافا عشان garbage collected فا هيا لغة سيئه جدا لو انته عاوز تكتب high performance code. الى جانب ان ال curly brace syntsx او ال white space syntax مش هما اللى بيحددوا اللغة المفروض تبقي dynamic ولا static او interpreted ولا compiles و شايف ان ممكن نعمل واحد تشيل العيوب الافتراضية دي و تخلينا نستخدم نفس ال syntax في كل الاستخدامات و لو اتعملها design صح. اما عن خبرتي فا انا خبرتي فى ال software development و ال IC Design

  • @Mohammed-mm3kb
    @Mohammed-mm3kb 3 часа назад

    انت ناسخ فيديو Brian Will و كاتب في الوصف “inspired by” بس المشكلة انك ناسخه بالضبط لكن مترجمه و مختصره شوي. حرفيا انت ما سويت شي، بس قاعد تنسخ فيديو ثاني، مب قاعد تعطي رايك الحقيقي

    • @Abstract-Engineering
      @Abstract-Engineering 3 часа назад

      صحيح انى واخد منه حاجات كتير و بعرب المعلومات اللى انتفعت بيها و بضيف الجزء اللى من خبرتي فيه عشان كدة حطيت امثلة من خبرتي و زودت نقط علية انا مش هنفي خالص انى بحاول اعرب كلام Brian Will ولا غيره من الناس زي Mike Acton و Jonathan blow انا بذكرهم بالاسم. لو مشكلتك فى انى كاتب inspired ممكن اقول taken from عادي.

    • @Abstract-Engineering
      @Abstract-Engineering 3 часа назад

      تمام كده This information in this video is taken from the work of Brian Will, Mike Acton, Casey Muratori, and Jonathan Blow.

  • @eslamehab6690
    @eslamehab6690 4 часа назад

    جميل، ممكن تعمل مثال code في فيديو تاني يكون في برنامج بسيط بيحل مشكلة مكتوب بoop ونفس البرنامج بdod عشان توضح ازاي الdod هيحل مشاكل الoop

  • @omranjava9415
    @omranjava9415 6 часов назад

    لماذا التحدث بسرعة؟ ليس جميع من يسمعك من مصر الحبيبة , شكرا لحضرتك

  • @shehab9487
    @shehab9487 6 часов назад

    ممكن تبقى تكلمنا عن SOLID

  • @shehab9487
    @shehab9487 6 часов назад

    جميل 💞

  • @abanoubha
    @abanoubha 7 часов назад

    عاااااااش 💪

  • @hasnaouiacademy7899
    @hasnaouiacademy7899 7 часов назад

    متابعة على طول ❤ عندي سؤال بس انا ك باك اند و مهتم اني اتخصص و نكون قوي جدا في Optimization of the code يعني لما اشوف بروجكت احلله و اقوم باستخلاص نقاط الضعف فيه و اعمل maintenance ايه تنصحني بدراسته انا افكر في os و بعدها اتعمق في databases او اتعمق في api و http requests ايه رايك بحكم خبرتك في المجال

  • @ExceptionalJavaccpp
    @ExceptionalJavaccpp 9 часов назад

    يا ريت تكمل المحتوى ده لو عندك وقت كفاية انك فاهم software engineering و اسلوبك سلس فى الشرح

  • @Joe-y6g
    @Joe-y6g 10 часов назад

    من فضلك more videos about software engineering من الأساسيات حتى Advanced Not Programming languages just concept of Software Engineering and thank you

    • @Abstract-Engineering
      @Abstract-Engineering 9 часов назад

      There will be a mix of both and some hardware related stuff.

  • @hadialhalabi634
    @hadialhalabi634 10 часов назад

    عفوا يعني بس انا مبتدا بالبرمجة و عندي سؤال انا مو بالمكان الغلط؟؟؟ لاني بصراحة اول عشر دقايق فهمان كلشي و بعدها فصل الفوقاني عفوا بس ممكن حدا يوضحلي الاستاذ حسسني من التعليقات كانه ما حدا عرف يبرمج و كل الشركات و المبرمجين مو فاهمين الله وين حاططهم و كل شغلهم زبالة انا كمبتدا لازم اسمع كلام الsoftwwar engenering المعقد هاد ولا لازم اروح احل مسائل و اتدرب تاني شي ليش بعد هاد الفيديو حسيت انه حضرتك مستاء من كل اللغات و التقنيات و الأفكار و ونتقد كلشي هل هاد الكلام معناه انه ما لازم اتعلم الوراثة و ما عرف class بالبرنامج و اخر شي فهمت من كلامك انو نعمل كلشي بدون function و class يعني مثلا نكتب كلشي بال main هل من الواقعي نحارب فكرة oop مع المشاريع الكبيرة و نطبق كلشي بروسيجر انا كمبتدا ضعت بعد هاد الفيديو ممكن حدا يجاوبني

    • @Abstract-Engineering
      @Abstract-Engineering 9 часов назад

      بو انته مبتدأ اتعلم الاساسيات الاول و اتعلم ال problem solving بعدها و خد بس في بالك الفكرة اللى اتكلمت عنها. مش مستاء من كلهم بس الكويسين قليلين. انته هتضطر تتعلم ال OOP عشان هيدرسوهالك برضوا فى الجامعات و هتطلب منك فى السوق بس مهياش حاجة كويسه. و اخيرا انا مقولتش خالص خالص انك تكتب كل حاجة فى ال Main ال procedural كود هوا اللي بيتخدم functions/procedure و معاهم structs/classes عشان تكتب بيه بس دا مش هوا ال OOP.

    • @hadialhalabi634
      @hadialhalabi634 9 часов назад

      @@Abstract-Engineering تمام شكرا لحضرتك ان شاء الله تستمر بقناتك نحو الأفضل

  • @deez_dev
    @deez_dev 10 часов назад

    كله بسبب جافا 😂 بالنسبة الي بكتب Functional وشوية OO بدون multi level inheritance او interfaces والاعتماد على dependency injections يعني من الاخر لازم يكون كود قابل لل testing

  • @randomrfkov
    @randomrfkov 11 часов назад

    هو الي البرمجة العربية نصها انجليزي ؟ You guys can't explain Programming without using English terms?

    • @Abstract-Engineering
      @Abstract-Engineering 9 часов назад

      لان الترجمة الموجودة حاليا سيئه و تخلو من ايصال المعني الصحيح. اذا وجدنا غيرها سنحاول و لكن سيبقى الامر انك محتاج تتعلم الانجليزية رغما عنك لتعمل بالمجال.

  • @abdelrahmanalmokhraty110
    @abdelrahmanalmokhraty110 11 часов назад

    Great Content, are there any references you prepared from?

    • @Abstract-Engineering
      @Abstract-Engineering 9 часов назад

      Down in the description are some the influences that had a great impact on me and you can teach your self more.

  • @pythonholic
    @pythonholic 11 часов назад

    طيب عادي استعمل Functional Programming FP افضل بديل لل OOP

    • @Abstract-Engineering
      @Abstract-Engineering 9 часов назад

      لو مش هيسببلك مشاكل في ال performance عادي بس بردو خلى بالك عشان متكونش بت restrict نفسك زيادة عن اللزوم بسبب ال FP

  • @MuhammadSalah-s7o
    @MuhammadSalah-s7o 12 часов назад

    انت متحامل جدا على الOOP الصراحة

  • @Ma7moudAlySalem
    @Ma7moudAlySalem 12 часов назад

    رايق تسلم ايدك. كسر في الاصنام دي كمان الله يعينك

  • @mhsn27mhsn10
    @mhsn27mhsn10 14 часов назад

    اكثر نقطة اقنعتني فيها بكلامك و هي نقطة Casting صحيح , لكن في الباقي OOP ممتازة تحتاج فهم كويس لتطبيقك و مع تقليل من Casting حيكون مشروع ممتاز و مريح

  • @kareemnewpers
    @kareemnewpers 14 часов назад

    الدقيقه 19:50 اجابتها مش بس في ال OOP، في كمان overhead كبير في البروتوكولات و في مشكله مع الشركه نفسها و هحكي قصه صغيره حصلتلي، كنت عاوز اعمل مشروع مفتوح المصدر عشان اعدي بيه ف ال cv اسمه palm tree server و فكرته انه شبه S3 بس تقدر تشغله locally، كنت ساعتها اول مشروع ليا و مكنتش اعرف testing كويس ولا oop design و كنت يدوب قاري مقال عن ال design patterns المهم حطيت في دماغي ال performance جدا و قولت مصلحه هستخدم nodejs في ال IO استخدمت raw tcp في كل حاجه تقريبا و عملت زي بروتوكول بسيط مخصص للسرفر شبه AMQP، استخدمت event bus و استخدمت multithreading و callbacks و shared buffers على الرغم من تخلف ال testing و عدم الخبره المسبقه عملت سوفتوير مستقر و سريع جدا بيعرف يطلع احسن حاجه من المواد و cpu مكانش بيعدي 3٪ و ميموري تحت ٥٠ ميجابايت معظمها ضايع على النود، استخدمت السبب في دا انو كان معايا وقت و كنت مهتم بال performance بالنسبة لل stack بتاعي و على قد قدراتي وقتها اما اشتغلت في شركه كان كل همنا نطلع mvp في اسرع وقت و دي كانت النتيجه، محدش مهتم بالdelay ال 15 ms ولو حصلت اي bug ال user بي reload و خلاص، دا غير ال clients الي مش عاوزين يدفعو فلوس ف حاجه محترمه ال oop حاجه عظيمه جدا و كل المشاكل الي حضرتك اتكلمت عليها محلوله بال design patterns و كدا كدا اي سيستم كبير بيكون complex غصب، هي الدنيا كدا، و بالرغم من كدا يظل ال OOP اعظم paradigm لحد انهاردا معادا في مسألة لل performance و ساعتها معاك حق فعلا و هنا بنلجأ للحلول الي هتسببلنا نوع تاني من المتاعب، يعني الحياه tradeoffs تعديل: الفديو عظمه و اول ما لقيت القناه اشترك، استمر يا كينج محتاجين محتوى زي دا

  • @Awwe12675
    @Awwe12675 14 часов назад

    المشكلة نحن المبرمجين مو عارفين كيف نسوي برنامج ما نعرف نخطط عندنا افكار لأي مشروع لكن مو عارفين كيف نبدا

    • @Abstract-Engineering
      @Abstract-Engineering 9 часов назад

      ابدأ بابسط طريقة غبية و طور على الكود على مرات متتابعة

    • @Awwe12675
      @Awwe12675 9 часов назад

      @@Abstract-Engineering والله انه موضوع كبير ربك يسهل

  • @bakrianoo
    @bakrianoo 16 часов назад

    اعتقد المحتوى حيكون ثري اكثر، لو بدات تقارن الافكار عن طريق امثلة من الاكواد، عشان كثير من المصطلحات بالنسبة للي مجربش، صعب اسقاطها على الواقع. لستمر 😊

  • @masaftic
    @masaftic 16 часов назад

    الحمدلله لقيت محتوى عربي بيتكلم فالحاجات المهمة دي. لازم تكمل

  • @mf_tube
    @mf_tube 16 часов назад

    ال OOP ما هو إلا programming approach قائم علي set of rules made by someone or some people و ال object بيكون هو محور الحدث في هذا النوع من البرمجة زي ()object.print فدائماً في ال OOP بنستدعي ال object و بعدين dot أو arrow علشان نوصل للمتغيرات أو الfunctions الخاصة بال object ، الكومبيلر لما بيشوف حاجة زي دي ()object.print في طريقة بيبدأ يحولها لصورة مختلفة تماماً عن طريق إنو بيعمل حاجة إسمها name mangling علشان في النهاية يحصل calling للدالة print الخاصة بال object وفي النهاية كل الكود بيتحول assembly instructions ... التدهور في ال performance الخاص بال software لية أكتر من سبب و غالبا مش بيكون مرتبط بال compiler نفسة لأن في bad practices أو misuses كتير الناس بتعملها أثناء كتابة الكود بإستعمال framework أو لغة برمجة تم تصميمها وتطويرها عن طريق ناس معينة هما بس اللي يعرفو خبايا ال product بتاعهم و ممكن يكون ال software اللي الناس بتستعملو في designs معينة بتقلل ال performance لكن ال compilers المشهورة غالبا ما بتكون بريئة من هذا الموضوع.

    • @Abstract-Engineering
      @Abstract-Engineering 9 часов назад

      اعتقد حضرتك واخد المضوع بالعكس صحيح ال compiler بيحسن الكود بس انته متخيل انه لو مش بيعمل ال optimizations دي الكود اللى الناس بتكتبة يكون اسوأ كام مرة. و تاني حاجة انك اختصرت المشكلة بتاعة ال OOP كلها فى function call على base object و دا خطأ كبير لانك تقريبا اخترت احسن case فيهم. ثالثا و هوا ال name mangling حاجه و ال performance optimization حاجه تانية و ملهومش علاقة ببعض و كمان ال name mangling مش ضروري عشا تعمل ال call الصح ل print

    • @mf_tube
      @mf_tube 7 часов назад

      @@Abstract-Engineering مستحيل تقدر تنادي فانكشن موجودة داخل أي كلاس بدون حدوث name mangling لأنو ممكن يكون عندك أكتر من كلاس فيهم نفس الفانكشن و بردو يستحيل تقدر تعمل function overloading without name mangling name mangling ال بيخلينا ننزل لمستوي أقل في البرمجة وهو مستوي لغة السي اللي هي ال procedural programming OOP طريقة كتابة الكود في ال هي مجرد واجهة برمجية سهلة الإستخدام بالنسبة ليك كمبرمج لكن بمجرد ما الكومبيلر بيبدأ يشتغل و يعمل كومبيل كل الكود اللي إنتا كتبتة بيبدأ يأخذ صورة تانية و شكل تاني مختلف تماما عن اللي إنتا كتبتة إلي أن يتم تحويل الكود في النهاية إلي مجموعة من ال Assembly instructions أما عمليات التحسين اللي الكومبيلر بيعملها فبتكون مثلاً إن الكومبيلر بيحاول يحذف أي جزء من الكود غير فعال أو غير مستخدم أو بيحاول يعوض شيئ إنتا نسيتة في إطار القواعد اللي الكمبيلر ماشي عليها لكن الكمبيلر مش هيضيف أي شيئ سحري للكود، يعني لو إنتا كاتب ألجوريزم سيئ علي سبيل المثال هيفضل الألجوريزم زي ما هو بعد عملية الكومبيل أو لو إنتا عندك سوء إستخدام لبعض الإمكانيات المتاحة في لغة البرمجة فهيظل الأداء سيئ، الكومبيلر ملوش دخل في كل حاجة إنتا بتعملها كمبرمج، إنتا ممكن تكتب كود وتعملو كومبيل وبمجرد ما تشغل الكود يحصل تشبع في الذاكرة memory leak ونظام التشغيل كلة يهنج.

  • @abdullahsaid4765
    @abdullahsaid4765 17 часов назад

    جامد يخويا ❤

  • @passionforsciencel5180
    @passionforsciencel5180 18 часов назад

    من الجميل لو تعمل فيديو عن الأدوات و اللغات التي كان لها التأثير الأكبر مثل java و c

  • @passionforsciencel5180
    @passionforsciencel5180 18 часов назад

    الآن فهمت ليش كل low level developers أو الناس اللي بتشتغل بلغات زي C و rust كارهين للـ oop و ليش لغات زي go و rust مع أنها حديثة لكن مش بتهتم بدعم oop و تكتفي ببعض features تشبه لل methods و encapsulation بس . شكرا على المحتوى الهادف . بالمناسبة هو في مشروع فعلي لل abstract language ؟

    • @Abstract-Engineering
      @Abstract-Engineering 9 часов назад

      عفوا باذن الله Abstract هيكون مشروع فعلي

    • @passionforsciencel5180
      @passionforsciencel5180 9 часов назад

      @@Abstract-Engineering من فضلك اعمل فيديو عن كيف نوفق بين industry و بين best practices اللي ذكرتهم ، أو جاوبني لو مقدرتش . أنا مثلا طالب ماجستير جربت أكثر من لغة برمجة و عندي خبرة في مشاريع شخصية خارج شركة ، و مهتم بال low level و كيف databases تشتغل و compilers و information theory و ما إلى ذلك . و في نفس الوقت مطالب أني أشتغل و للأسف rust و اللغات المشابهة ناقصة كوظائف ، الحل من فضلك

    • @Abstract-Engineering
      @Abstract-Engineering 9 часов назад

      ان شاء الله في حاجات زي كدة جاية قدام

  • @ziadmohamed-nk9yq
    @ziadmohamed-nk9yq 20 часов назад

    كان عندي نفس النظرة ديه بقالي فتره وكنت خايف اقول الصراحة 😂

  • @billcosta
    @billcosta 20 часов назад

    1. encapsulation at a fine grained level: I think you're confusing between the traditional object-oriented system, and messaging system of small talk. other than that, you claim that you break encapsulation when an object is modified from many sources, which is simply incorrect the purpose of encapsulation is to maintain invariants, as long as this holds, it doesn't matter how many sources modify the state of your instance small-talk didn't invent OOP btw. 2. unnatural way to think of computation: I agree with that, but this style is not mandatory in essence of object-oriented design, this is a problem of inheritance 3. horrible performance: you don't need to store references to objects, again, this is a problem caused by inheritance, as it leads to different sized instances of the base class that can't be stored in a compact fashion, but in case where inheritance isn't used, there's really no difference between storing objects or storing structs, by the way, Unpredictable memory accessing, branch misprediction, cache missing are essentially the same thing memory fragmentation causes wrong prefetching (branch misprediction) and checking memory that isn't stored in cache, which both causes cache misses what you're trying to criticize is not OOP, but design patterns

    • @Abstract-Engineering
      @Abstract-Engineering 19 часов назад

      You're points would be valid if that's what I meant. And I do somehow agree with small parts of them. But: 1. What do you mean by traditional OOP? 2. I'm not confusing encapsulation with message passing. They're connect by the fact that in true Object-Oriented Programming objects communicate via message passing. 3. The idea of encapsulation involves segregation of state & state invariance and messages only passes copy of the state not modify the state itself. And how are we maintaining state invariance if multiple sources can directly modify the state? Yes, setters and getters provide some control but it's a very superficial control over state invariance. And also mutable states, inheritance & subclassing, and method overriding, multithreading & concurrency, and shared access destroys that at least quite a bit. 4. Alan Kay is the one that coined the term and his philosophy is by enlarge the one that affected the development of other OOP languages. And yeah I'm aware of Simula also but it's not really my point. 5. I don't really think you can say it's not mandatory as almost the entire philosophy of OOP as it being taught and used everywhere with the rest of it's ideology being the SOLID Principles, Design Patterns, Clean Code, and Agile Manifesto all use it and nobody really say that. Like if you ask any one what are the Principles of OOP they will tell you (Abstraction, Encapsulation, Inheritance, and Polymorphism). 6. It's not just inheritance. the very own idea of encapsulating code at such a fine-grained level create a multitude of classes/structs/types with all sorts of hidden state and that hinders performance in at least two ways. First storing classes/structs with lots of hidden state and Booleans and other no essential state is bad for performance as you mentioned memory fragmentation leades to cash misses etc... the second way is that it prevents the programmers from reasoning about their code correctly because somewhere layes a piece of state that is hidden away from them and it affects how methods or objects behave so they end up writing suboptimalandbad code. 7. I'm criticizing the entire ideology of OOP and all of it's emerging results of it such as (SOLID Principles, Design Patterns, Clean Code, etc...) not just one as they are in almost every case come packaged together. 8. Some tiny small case where really associating data with behavior is allowed is ADTs (Abstract Data Types). Other than that basically it should never be done. Proper modules and namespaces are the way to go. 9. And finally based on the evidence of current state of software products I'm still convinced that OOP is totally wrong.

  • @peerfect465
    @peerfect465 20 часов назад

    شفت الفيديو عربي و العنوان controversial بدأت السخرية في نفسي ما ان بدأت الفيديو حتى انقلبت السخرية اعحابا تم الاشتراك

    • @Abstract-Engineering
      @Abstract-Engineering 19 часов назад

      اتمني تكون استفدت و انك تشوف ال resources اللى في ال description. و شكرا للأشتراك❤

  • @makadi86
    @makadi86 22 часа назад

    طب أنت نقدت من غير حل ولا بديل!, يعني نعمل إيه طيب؟ ولسه كنت هسألك على راست لقيتك بتنقدها فى الكومنتس هي كمان!

    • @Abstract-Engineering
      @Abstract-Engineering 21 час назад

      انا قولت فى اخر الفيديو ان الافضل هوا Data-Oriented Design و نكتب procedural code. و قلت على أسامي ناس بتوضح دا و كمان حاطك لينكات لفيديوهات ليهم فى ال description. بالنسبة ل rust فا ليها مزايا فى ال safety بس عيوبها فى انها عاوزة الناس تعمل كل حاجة بطريقة rust بس و الناس بتحارب ال compiler عشان تكتب اى كود و صعب اوي فيها انك تعمل fast development.

    • @bashiraddean-mufarreh
      @bashiraddean-mufarreh 21 час назад

      ​@@Abstract-Engineeringكلام غير واقعي oop لها مميزاتها وdod لها مميزاتها

    • @Abstract-Engineering
      @Abstract-Engineering 21 час назад

      انا مش فاهم الكلام مش واقعي ازاى انا ناقشت المبدأ من اللى عاملة و ناقشت بالدليل على النتايج و اقترحت الحلول. ودا ممكن يكون راي حضرتك بس احنا فى مجال هندسي فا لما نبص على نتايج ال Software الشنيع اللى ناتج عن ال OOD و الفرق بينه و بين حاجات معمولة بال DOD فا للاسف الرأي ان ال OOP حاجة كويسة بيضرب بيه عرض الحائط. الى جانب اننا مش لازم نفضل ان كل حاجة ليها مميزاتها و عيوبها ال OOP زيها زي اى Tool الناس عملتها و لما جربناها طلعت Tool سيئه و المفروض نرميها بس الناس لسبب ما عمل عقيدة ما حوالين الموضوع و بندافع عنة حتى في و جود الادلة اللى بتنفي صحة كفائتها كا Tool. و المفروض المهندسين بيختارو ال Tool الصح للشغل مش بنتحيز ال Tool.

    • @bashiraddean-mufarreh
      @bashiraddean-mufarreh 20 часов назад

      @@Abstract-Engineeringما تعصب ي استاذي بس هذه OOD أفضل من حيث التنظيم، المرونة، والصيانة.DOD أفضل عندما يكون الأداء هو الأولوية القصوى طبعا اذا كنت backend engineering

    • @pythonholic
      @pythonholic 11 часов назад

      بصراحة مبدئ encapsulation يعجبني كثير

  • @ahmedmagdyalimohamed4024
    @ahmedmagdyalimohamed4024 22 часа назад

    ‏‪17:55‬‏ اتوقع ده ليه علاقه اكتر بكتير علشان البرامج كانت ابسط بكتير جدا من دلوقتي

    • @Abstract-Engineering
      @Abstract-Engineering 21 час назад

      لا خالص ملوش علاقة احنا اللى بنزود complexity ملهاش لازمة فا بيبان انها معقدة و هيا لطالمفروض اصلا تبقى ابسط و احسن و اسرع و دا اصلا واحد من العيوب اللى بنتقدها ان الناس اصلا مش فاهمة بسبب انهم مفكرين ان دى الطريقة الوحيدة لكتابة البرامج.

  • @ahmedghallab5342
    @ahmedghallab5342 22 часа назад

    كنت مستني حد عربي يتكلم في الموضوع ده من زمان

    • @Abstract-Engineering
      @Abstract-Engineering 21 час назад

      متنساش ال support لل channel بقي عشان نكمل😂

    • @ahmedghallab5342
      @ahmedghallab5342 19 часов назад

      @@Abstract-Engineering إن شاء الله اول لما تكمل السلسلة بس

  • @ahmedghallab5342
    @ahmedghallab5342 22 часа назад

    احسنت الله ينور ❤ كنت حابب حضرتك تضع امثله علشان نفهم اكثر😅 جزاك الله خيرا

    • @Abstract-Engineering
      @Abstract-Engineering 21 час назад

      قريبا باذن الله الفيديوا هيبقى واحد من سلسة بتتكلم عن مشاكل تخص الهارد وير و السوفتوير و حلو و الامثلة هتيجي مع الوقت.

  • @3squares7
    @3squares7 22 часа назад

    ruclips.net/video/QM1iUe6IofM/видео.html&ab_channel=BrianWill

    • @3squares7
      @3squares7 22 часа назад

      copy paste programmer and content creator (:

    • @Abstract-Engineering
      @Abstract-Engineering 9 часов назад

      انتة خدت بالك اني حاطة كرفرنس فى ال description 😂😂😂 انا حرفيا كاتب ان ال inspiration منه

  • @Singlton
    @Singlton 23 часа назад

    شوف rust traits

    • @Abstract-Engineering
      @Abstract-Engineering 22 часа назад

      I'm not new to rust. And it has it's own problems also. Rust is very overrated.

  • @baxiry.
    @baxiry. День назад

    golang is the way

  • @gazzarDev
    @gazzarDev День назад

    "Object-oriented programming is an exceptionally bad idea which could only have originated in California" Edsger Dijkstra

    • @Abstract-Engineering
      @Abstract-Engineering День назад

      He actually said a better one. "Object-oriented programs are offered as an alternative to correct ones".

    • @SaudBako
      @SaudBako 2 часа назад

      Edsger Dijkstra (1976) “On the fact that the Atlantic Ocean has two sides” Summary: Europe programs with mathematical precision, while Americans just push buttons. Alan Kay (1982) “On the fact that most software in the world is written on one side of the Atlantic Ocean”

  • @MohamedKamal-wd8hx
    @MohamedKamal-wd8hx День назад

    its all tradeoffs...

    • @Abstract-Engineering
      @Abstract-Engineering День назад

      I have call that BS. This is a political argument that is just useless. Because clearly the so called tradeoffs aren't making anything better. Take a look at the results. Bad, buggy, slow software. That shouldn't be the result if was any good. You're thinking of a totally wrong tradeoffs.

    • @MohamedKamal-wd8hx
      @MohamedKamal-wd8hx 20 часов назад

      @@Abstract-Engineering you just dont have the experience to understand how to fit the paradigm to problem domain. oop was and still the dominant by huge margin style used in production. Every good oop programmer I know does know about other paradigms like functional. generics, meta... and knows when and what to pick from them. You are free with your opinions, but people with more experience also free to see them ridiculous or beginner's views.

  • @AntoniousFrancis
    @AntoniousFrancis День назад

    Insightful!

  • @alycheikhouldsmail7576
    @alycheikhouldsmail7576 День назад

    المقارنة بين شعبيتي اطاري العمل React js و Angular يؤكد المعني الذي ذهبت اليه

    • @Abstract-Engineering
      @Abstract-Engineering День назад

      حوالي 99.999% من web tools زبالة

    • @waheed6448
      @waheed6448 14 часов назад

      ​@@Abstract-Engineeringفى فيديو بيشرح ليه زبالة

    • @Awwe12675
      @Awwe12675 13 часов назад

      كلهم ينفعون للمشاريع الصغيرة ما ينفع تكتب قوقل فيس بوك يتيوب تويتر الخ بإطار

    • @imadhamaidi
      @imadhamaidi 12 часов назад

      ​@@Abstract-Engineeringcan you elaborate on this criticism, especially regarding reactjs since while it's not the most optimal way to build performant UIs it makes up for that in developer experience and ecosystem.

  • @vxcute0
    @vxcute0 День назад

    اخيرا حد بيتكلم عن ال "software engineering"

  • @alycheikhouldsmail7576
    @alycheikhouldsmail7576 День назад

    بارك الله فيك