اذهب إلى المحتوى

Entesar Khaled

الأعضاء
  • المساهمات

    1516
  • تاريخ الانضمام

  • تاريخ آخر زيارة

  • عدد الأيام التي تصدر بها

    213

إجابات الأسئلة

  1. إجابة Entesar Khaled سؤال في إجاباتي في أكاديمية حسوب لا تظهر في حسابي على مستقل كانت الإجابة المقبولة   
    أهلًا بك،
    فعليًاهي ظاهرة! 
    لكن، لاحظ اتجاه السهم...


  2. إجابة Entesar Khaled سؤال في انا محتار ما هي الطريقة الأفضل لتطوير تطبيقات الويب كانت الإجابة المقبولة   
    اهلا بك 
     
    فعليا لا يوجد جواب بعينه ..ذلك يرجع للسوق الذي ستعمل فيه فبصراحة ليس هناك شيء اسمه افضل لغات...أفضل لغة لتطوير الويب تختلف من شخص لآخر. و إلا ما رأيت العدد الكبير من لغات البرمجة. هناك تفضيلات بناء على هدف التطبيق وطبيعة استهوائك لها...، 
    --الأفضل من حيث الشعبية وتوفر المراجع: PHP
    --الأفضل من حيث الأداء: Python (على سبيل المثال- قد لا يكون ذلك صحيحاً)
    --الأفضل من حيث قابلية التعديل والصيانة: Java...
    وهلم جرا.
    هذا من حيث خصائص اللغات (العرض)، الآن ما هي حاجتك بالضبط (الطلب)؟
    --إن كنت مهتماً بمدى توفر المراجع فعليك بـ PHP.
    --إن كنت مهتماً بسرعة أداء اللغة، فعليك بـ Python (بحسب افتراضاتنا).
    --إن كنت مهتماً بالصيانة والتعديل بصورة دائمة 
    فعليك بـ Java.
    --إن كنت مهتم بانشاء تطبيق ويب يفتح على الموبايل واللابتوب معا فيمكن  انشاء تطبيق أندرويد باستخدام تقنيات الويب  بالإضافة إلى javascript والتي تقوم باعطاء الديناميكية في 
    التطبيق، 
    اغلب ما سبق كان بالنسبة لتطبيقات الويب ويمكنك مشاهدة هذا الفيديو الذي يتحدث عن لغات برمجه تطبيقات الاندرويد  https://www.youtube.com/watch?v=RRx4xvenc8A&feature=share
     
    بالتوفيق
     
  3. إجابة Entesar Khaled سؤال في احتاج مساعدة في جافاسكربت Javascrpt كانت الإجابة المقبولة   
    أهلًا بك،
    يمكن فعل ذلك بعدة طرق أبسطها أن تعطي أمر javascript في نفس السطر لوسم <img> باستخدام الخاصيتين onmouseover و onmouseout وبعد ضبط رابط صورتك الصحيح فينتج كالتالي
    <a href="#" id="name"> <img title="Hello" src="/ico/view.png" onmouseover="this.src='/ico/view.hover.png'" onmouseout="this.src='/ico/view.png'" /> </a> إذا كنت تريد تغيير شكل أيقونه بوتستراب فيمكن فعل ذلك بخاصية css وهي hover كالتالي
    <!DOCTYPE html> <html> <head> <link href="https://stackpath.bootstrapcdn.com/font-awesome/4.7.0/css/font-awesome.min.css" rel="stylesheet" integrity="sha384-wvfXpqpZZVQGK6TAh5PVlGOfQNHSoD2xbE+QkPxCAFlNEevoEH3Sl0sibVcOQVnN" crossorigin="anonymous"> </head> <body> <div class="container"> <a href="#" class="lock"> <i class="fa fa-unlock"></i> <i class="fa fa-lock"></i> </a> </div> <style> .lock:hover .fa-unlock, .lock .fa-lock { display: none; } .lock:hover .fa-lock { display: inline; } </style> </body> </html> بالتوفيق..
  4. إجابة Entesar Khaled سؤال في عدد الأجهزة التى يمكن أن تتصل بالإنترنت مباشرة IPv4 مع شرح كيفية حساب عددها كانت الإجابة المقبولة   
    أهلًا بك،
    لنبدأ بالقول أنه خلال المراحل الأولية للإنترنت ، كان المقصود أن يكون لكل كمبيوتر عنوان IP فريد خاص به. يسمح ذلك لكل جهاز متصل بالإنترنت بالتحدث إلى كل جهاز آخر باستخدام عنوان IP الفريد.
    ولكن ، IPv4 يستخدم عناوين IP 32 بت ، ومع 32 بت ...العدد الأقصى لعناوين IP هو 32^2 أو 4،294،967،296. هذا يوفر أكثر من أربعة مليارات عناوين IPv4 (من الناحية النظرية). فعليًا وبالطبع عدد عناوين IPv4 المتاحة أقل من العدد الأقصى النظري.
    مصدر ..الفقرة الثانية من مقال ويكيبيديا لمزيد من التفاصيل
    بالتوفيق...
  5. إجابة Entesar Khaled سؤال في السلام عليكم , انا انشأت 2 jframe , واحدة لتسجيل الدخول , والثانية لتسجيل حساب جديد , والان اريد الكود الذى يجعل المستخدم اذا ضغط على تسجيل حساب جديد يذهب مباشرة الى صفحة التسجيل كانت الإجابة المقبولة   
    وعليكم السلام،
    يمكن أن تجعل لكل frame كلاس منفصلة وعند الضغط على زر Signup من خلال كلاس SignupFrame يتم إنشاء new object من كلاس LoginFrame.
    العملية ستتم من خلال إضافة ActionListener وبالعربية "مستمع الحدث" للزر المراد إجراء أحداث من خلالة كإظهار صفحة أخرى أو تنفيذ عملية حسابية أو استدعاء دالة أو حفظ معلومات بقاعدة البيانات أو أي شيئ تريد القيام به عند الضغط على هذا الزر.
    إذا أردت  شرح ActionListener وطريقة إضافته للزر في Java GUI فستجده في هذا الفيديو بالعربية 
    هنا المثال الذي طلبته مطبقاً باللطريقة السابقة 
    import javax.swing.*; import javax.swing.table.DefaultTableModel; import java.awt.*; import java.awt.event.*; import java.util.*; class LoginFrame extends JFrame { private JTextField user,pass; private JLabel userL,passL; private JButton ok,cancel; public LoginFrame(){ super("Login"); setBounds(515,210,280,175); setLayout(null); user = new JTextField(); pass = new JTextField(); userL = new JLabel("User Name"); passL = new JLabel("Password"); ok = new JButton("Login"); cancel = new JButton("Cancel"); ok.addActionListener(new ActionListener(){ public void actionPerformed(ActionEvent e) { System.exit(0); } }); cancel.addActionListener(new ActionListener(){ public void actionPerformed(ActionEvent e) { System.exit(0); } }); add(user); add(pass); add(userL); add(passL); add(ok); add(cancel); userL.setBounds(20, 10, 120,30); user.setBounds(140, 10, 120,30); passL.setBounds(20, 60, 120,30); pass.setBounds(140, 60, 120,30); ok.setBounds(30, 110, 100,30); cancel.setBounds(150, 110, 100,30); setVisible(true); } public static void main (String[] args) { new SignUpFrame(); } } class SignUpFrame extends JFrame implements ActionListener{ JLabel title, idLabel, nameLabel, genderLabel, addressLabel, contactLabel; JTextField idField, nameField, genderField, addressField, contactField; JButton registerButton, exitButton; JRadioButton male, female; ButtonGroup bg; JPanel panel; String gender = ""; DefaultTableModel model; SignUpFrame() { setSize(300, 360); setLayout(null); title = new JLabel("Registration Form"); title.setBounds(60, 7, 200, 30); idLabel = new JLabel("ID"); idLabel.setBounds(30, 50, 60, 30); nameLabel = new JLabel("Name"); nameLabel.setBounds(30, 85, 60, 30); genderLabel =new JLabel("Gender"); genderLabel.setBounds(30, 120, 60, 30); addressLabel = new JLabel("Address"); addressLabel.setBounds(30, 155, 60, 30); contactLabel = new JLabel("Contact"); contactLabel.setBounds(30, 190, 60, 30); idField = new JTextField(); idField.setBounds(95, 50, 100, 30); nameField = new JTextField(); nameField.setBounds(95, 85, 100, 30); male = new JRadioButton("Male"); male.setBounds(95, 120, 60, 30); male.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { gender= "Male"; } }); female = new JRadioButton("Female"); female.setBounds(155,120, 70, 30); female.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { gender ="Female"; } }); bg = new ButtonGroup(); bg.add(male); bg.add(female); addressField = new JTextField(); addressField.setBounds(95, 155, 100, 30); contactField = new JTextField(); contactField.setBounds(95, 190, 100, 30); exitButton = new JButton("Exit"); exitButton.setBounds(25, 230, 80, 30); exitButton.addActionListener(this); registerButton = new JButton("Register"); registerButton.setBounds(110, 230, 100, 30); registerButton.addActionListener(this); add(title); add(idLabel); add(nameLabel); add(genderLabel); add(addressLabel); add(contactLabel); add(idField); add(nameField); add(male); add(female); add(addressField); add(contactField); add(exitButton); add(registerButton); setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); setResizable(false); setVisible(true); } public void actionPerformed(ActionEvent ae) { if(ae.getSource()==registerButton)new LoginFrame(); else System.exit(0); } } بالتوفيق...  
     
  6. إجابة Entesar Khaled سؤال في هل يتوجب علينا تعلم الخوارزميات قبل تعلم جافاسكربت كانت الإجابة المقبولة   
    أهلا بك
    في البداية، سأوضح ما تعنيه الخوارزميات ومدى ارتباطها بلغات البرمجة.
    تعرف الخوارزمية على أنها مجموعة محدودة من القواعد والطرق التي تعطي سلسلة من العمليات لحل نوع معين من المشاكل خطوة بخطوة بواسطة جهاز الكمبيوتر. قد تتضمن خطوات تعريف الخوارزمية التشعب أو التكرار بناءً على المشكلة التي يتم تطوير الخوارزمية لها. في حين يتم تعريف خطوات الخوارزمية بلغة بشرية مفهومة ومستقلة عن أي لغة برمجة فيمكننا تنفيذها بعد ذلك بأي لغة برمجة من اختيارنا.
    إلى جانب كونها مجرد مجموعة محدودة من القواعد التي تعطي سلسلة من العمليات لحل نوع معين من المشاكل ، فإن الخوارزمية المحددة جيدا تحتوي على خمس ميزات مهمة:
    -- المحدودية. يجب دائمًا إنهاء الخوارزمية بعد عدد محدد من الخطوات.
    -- الوضوح. يجب تحديد كل خطوة من الخوارزمية بدقة؛ يجب أن يتم تحديد الإجراءات التي يجب تنفيذها بدقة وبشكل لا لبس فيه لكل حالة.
    -- المدخال. الخوارزمية تحتوي على صفر أو أكثر من المدخلات، أي الكميات التي تعطى لها في البداية قبل أن تبدأ الخوارزمية.
    -- المخرج. تحتوي الخوارزمية على مخرج أو أكثر، أي الكميات التي لها علاقة محددة بالمدخلات.
    -- الفعالية. ومن المتوقع عمومًا أن تكون الخوارزمية فعالة أيضًا. وهذا يعني أن جميع العمليات التي يتعين إجراؤها في الخوارزمية يجب أن تكون أساسية بشكل كاف بحيث يمكن من حيث المبدأ أن تتم بالضبط وفي فترة زمنية محدودة.
    هل ترى أي علاقة؟ نعم، هناك علاقة، الخوارزمية ليست سوى فكرة لحل مشكلة بمساعدة لغة برمجة.
    الخوارزميات مفيدة لتعلم البرمجة بشكل عام وهي جيدة لأي مطور معرفة.
    لكن صحيح أنه يجب أن تتعلم الخوارزميات لتجعلك مبرمجًا عامًا بشكل أفضل، إلا أنها لن تساعد بشكل وثيق في استخدام جافا سكريبت ، باستثناء بعض الحالات الخاصة.
    JavaScript هي لغة مخصصة للعمليات غير المتزامنة التي تستند إلى الأحداث مثل جلب البيانات ومعالجة DOM، إنها ليست لغة حسابات بحته فليس من الضروري جدا أن تتعلم خوارزميات قبل تعلم جافا سكريبت.
    هناك كتب تتحدث عن تنفيذ الخوارزميات بلغات محددة ومنهم من ينفذ علم الخوارزميات مع جافا سكريبت. لكن مع ذلك، أنت لا تحتاج حقًا إلى استخدام الخوارزميات لبرمجة جافا سكريبت في معظم الأوقات.
    دورة تطوير واجهات المستخدم من أكاديمية حسوب تحولك لمطوّر واجهات مستخدم دون الحاجة لامتلاك معرفة سابقة بالبرمجة، ولا حتى معرفة سابقة بتفاصيل الخوارزميات، فبها ستتمكن من تعلّم تطوير واجهات المستخدم خطوة بخطوة اعتمادًا على التجربة العملية والمادة العلمية التي يتفاعل معها الطالب.
    كل التوفيق...
  7. إجابة Entesar Khaled سؤال في كيفية حساب مجموع ومتوسط عناصر مصفوفة في C++؟ كانت الإجابة المقبولة   
    أهلاً أيمن،
    البرنامج التالي يقوم بالإعلان عن مصفوفة تحتوي 10 قيم صحيحة ويجد مجموع هذة القيم ومتوسطها
    #include <stdio.h> #include <conio.h> int main{ int i, sum=0; int marks[10]={94,99,95,80,70,65,93,88,75,83}; for(i=0;i<10;i++) sum+=marks[i]; printf("The sum=%d\n",sum); printf("The average=%f\n",1.0*sum/10); getch(); return 0; } لعلك لاحظت أن الإجابة في مجملها بسيطة، لكن ربما تتساءل عن سبب ضرب القيمة 1.0 في المجموع قبل قسمته على عدد العناصر عند حساب متوسط القيم!
    أردت أن أجعل الإشارة ( / ) تعمل كإشارة القسمة الطبيعية ( ÷ ) بدلاً من أن تنتج الجزء الصحيح فقط من القسمة، لكن هذا غير متاح في لغة ++c إلا للقيم العشرية؛ لذلك قمت بتحويل القيمة العددية الصحيحة لعشرية من خلال الضرب في 1.0، وهذة أبسط الطرق الكثيرة لتحويلها.
    بالتوفيق...
  8. إجابة Entesar Khaled سؤال في ما انواع لغة الجافا واصداراتها كانت الإجابة المقبولة   
    أهلا أحمد،
    الجافا هي لغة برمجة موجهة للكائنات، ابتُكرت لإستخدامها بمثابة العقل المفكر المستخدم لتشغيل الأجهزة التطبيقية الذكية، وهي بالأصل تطويراً للغة ++C.
    لا يوجد أنواع للغة الجافا وإنما هنالك عدة إصدارات وفرتها الشركات المطورة للغة وهي:
    1- Java SE: الإصدار القياسي من الجافا بالإنجليزية (Java Standard Edition) هو الجزء الخاص ببرمجة برامج سطح المكتب (StandAlone applications).
    2- Java EE: اصدار الإنتربرايس بالإنجليزية (Java Enterprise Edition)هو يختلف عن الإصدار القياسي في أنه خاص ببرمجة الخوادم والتطبيقات الموزعة وبرمجة الويب.
    3- Java ME: اصدار المايكرو بالإنجليزية (Java Micro Edition) وهو إصدار خاص بالبرمجة على الهواتف المحمولة والأجهزة المحدودة في المصادر عموما وتعتبر الخيار الأول لمبرمجي ألعاب الهواتف المحمولة.
    4- Java Fx: تقنيّة أخرى اصدرتها صن ميكروسيستمز لتطوير تطبيقات من نوع "RIA" أي "Rich Internet Applications".
    بالتوفيق ...
     
×
×
  • أضف...