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

Yomna Raouf

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

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

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

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

    65

كل منشورات العضو Yomna Raouf

  1. الممارسة, الممارسة, و الممارسة. وحدها الممارسة ستجعلك تتذكرين الأكواد بشكل ممتاز و ستزيد من خبرتك أيضًا. يمكنك دائمًا ممارسة ما تعلمتيه في تطبيقات بسيطة حتى تتمكني من تثبيت ما تعلمتيه و تطوير مهاراتك. كما أنه لا يجب على المطورين حفظ الأكواد حتى أمهر المطورين و أكثرهم خبرة يستخدمون محركات البحث لتذكر أبسط الأشياء فلا توجد أي مشكلة في ذلك. كل ما عليك تذكره هو أنه يوجد أداة ما أو وسيلة ما تمكنك من حل المشكلة التي تعملين عليها أو من تنفيذ وظيفة معينة.
  2. يوجد العديد من المواقع التي قد تساعدك في ذلك, مثل: From Up North Behance Designspiration siteInspire Best Website Gallery Awwwards CSS Nectar Template Monster WebDesign Inspiration pinterest 99designs dribbble
  3. المقصود بذلك أنه لايتم حفظهم في قواعد البيانات. أما caching فالمقصود بذلك أن البرنامج يقوم بتذكر أماكن البيانات أو النتائج "المخرجات" التي قام بطلبها ال client فبذلك إذا قام بطلبها مرة أخرى يرسلها له مباشرة دون البحث في قاعدة البيانات أو القيام بالعمليات الحسابية و المنطقية مرة أخرى مما يحسن من أداء الموقع و سرعته.
  4. السبب في الإشارة السالبة هو أنك قمت باستخدام ;(Integer.toHexString(int و حيث أن ال parameter من نوع int فإنها تقوم بعمل تحويل إلى أنواع بيانات أولية في جافا و هذا يتضمن إضافة إشارة. أما سبب ظهور ffffff قبل رقم 83 هو إستخدام ال formatter %02X في ;(([sb.append(String.format("%02X",bytes[i حيث أن حرف X يقوم بالتحويل إلى Hexadecimal النظام السادس عشر.
  5. تفقد قسم spam في البريد الخاص بك ربما تجد إيميل التعليمات فيه. إن لم تعثر عليه يمكنك أن تتواصل مع مركز الدعم الفني من هنا و فتح تذكرة بمشكلتك و هم سيقومون بحلها .
  6. أنصحك بالتواصل مع مركز الدعم الفني من هنا و فتح تذكرة بمشكلتك و سيتم التواصل معك لحلها. هناك نصيحة أخرى صغيرة لا تقم بمشاركة الإيميلات الخاصة بك علنًا في أي مكان فقد يتسبب لك هذا في الكثير من المشاكل و الأضرار فقط قم بمشاركتها مع مركز الدعم.
  7. هل من الممكن أن تضع الأكواد في محرر الأكواد مع توضيح دلالات أسماء المتغيرات حتى أتمكن من مساعدتك
  8. // build.gradle implementation "androidx.swiperefreshlayout:swiperefreshlayout:1.0.0" // MyGlideModule.kt @GlideModule class MyGlideModule : AppGlideModule() // MainActivity.kt override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) setContentView(R.layout.activity_main) val circularProgressDrawable = CircularProgressDrawable(this) circularProgressDrawable.strokeWidth = 5f circularProgressDrawable.centerRadius = 30f circularProgressDrawable.start() GlideApp.with(applicationContext) .load("https://raw.githubusercontent.com/bumptech/glide/master/static/glide_logo.png") .placeholder(circularProgressDrawable) .into(a_main_image) } يمكنك تنفيذ ذلك باستخدام CircularProgressDrawable
  9. يوجد العديد من الطرق التي تمكنك من جعل الموقع متجاوب بدون media queries في بعض الأحيان أو مع استخدام بسيط لل media queries. فمثلًا: استخدام bootStrap-grid-system bootstrap classes فمثلا يمكن استخدام عدة كلاسات معًا كلًا منها يحدد عدد الأعمدة التي يشغلها عنصر معين استخدام css flexbox يمكنك الإطلاع عليه من خلال الرابط التالي flexbox و css grid من خلال هذا الرابط grid css flexbox هي التقنية التي بُني على أساسها bootstrap و هي تقوم بتقسيم الصفحة إلى أعمدة و كذلك css grid و لكن الفرق الأساسي بينهما هو أن css flexbox صممت لتنسيق الصفحة في بعد واحد أما css grid صممت لتنسيق الصفحة في بعدين. الصورة التالية توضح ذلك: يمكنك أيضًا الإطلاع على الروابط التالية : لعبة بسيطة تساعد في فهم flexbox لعبة بسيطة تساعد في فهم css grid فباستخدام هذه التقنيات معا يمكنك التقليل من ال media queries و ستوفر عليك إعادة كتابة الكثير من التنسيقات.
  10. المقصود ب variable to ftp like هو التالي : تقوم بتعريف متغير يسمى ftp و بالتالي يمكنك أن تترك هذا السطر كنا هو FILESYSTEM_CLOUD = ftp يمكنك الإطلاع على اامزيد من التوثيق التالي FileSystem_laravel5
  11. إذا كنت جديد في مجال البرمجة و كانت هذه أول لغة برمجة تتعلمها فمن الطبيعي جدًا أن تجد فيها شيئًا من الصعوبة. حتى و إن انتقلت إلى بايثون. لا تجعل سهولة HTML و CSS تؤثر على تقديرك لدرجة سهولة جافاسكريبت فهما لا تعتبران لغات برمجة (HTML & css). لغات البرمجة أكثر صعوبة من ذلك. أنصحك أن تستمر في تعلم جافاسكريبت و خذ وقتك حتى تتمكن من أن تفهم أساسيات اللغة بشكل جيد. فبعد الإنتهاء من جافاسكريبت ستتمكن من العمل كمطور واجهات في مواقع العمل الحر و ما إلى ذلك. أما إذا انتقلت إلى لغة بايثون ستقضي الكثير من الوقت تتعلمها ثُمَّ ستقضي أيضا بعض الوقت تتعلم جافاسكريبت ثُمَّ تعود لتتعلم ال backend أي أنك ستقضي وقت أطول حتى تستطيع العمل و وقت و عناء أكثر لتصل إلى نفس النتيجة بالنهاية. نصيحتي لك أن تحدد أولوياتك و بعدها اتخذ قرارك و اختر ما يناسبك فالناس ليسوا سواء في الطريقة التي يتعملون بها ما يناسب غيرك قد لا يناسبك و ما يجده الآخرون سهلًا قد لا تجده أنت سهلًا.
  12. الelemnt أي شيْ تستطيع أن تصل اليه مباشرة في HTML من خلال class أو ID أو TagName. في حين أن ال node أعم من ال element فال node هي جميع المكونات التي تتكون منها صفحة الويب فعندما نتعامل مع ال DOM نحن نتعامل مع nodes. أما ال elemnts فهم نوع واحد من ال node. فال node عبارة عن واجهة يرث منها عدد من ال DOM types و هي تسمح لهذه الأنواع أن تعامل بالمثل. المرجع: Ref: https://developer.mozilla.org/en-US/docs/Web/API/Node ال Element interface تمثل كائن من ال DOM. هذا النوع "interface" يصف خصائص مشتركة و methods لجميع ال elements. و ال elements يمكنها أن تحتوي على أي عدد من الأبناء في حين أن هذا غير ممكن لل node الخلاصة: يمكنك انشاء DOM Node في webpage كما يلي: var node=document.createTextNode('A Node'); و يمكنك انشاء paragraph element كما يلي: var p=document.createElement('p'); لارفاق ال node بال element: p.appendChild(node);
  13. هل قمت بنسخ الكود بأكمله؟؟ أعتقد أن سؤالك يتطلب هذا الجزع فقط pstmt.setString(1, "sample image"); //Inserting Blob type InputStream in = new FileInputStream("E:\\images\\cat.jpg"); // setBlob الجزء الذي سألت عنه pstmt.setBlob(2, in); بعد ذلك قم بعمل ()execute لل PreparedStatement.
  14. // connect to the Data Base String mysqlUrl = "jdbc:mysql://localhost/sampleDB"; Connection con = DriverManager.getConnection(mysqlUrl, "root", "password"); // create a prepaired statement PreparedStatement pstmt = con.prepareStatement("INSERT INTO MyTable VALUES(?, ?)"); //set values to the placehplders pstmt.setString(1, "sample image"); //Inserting Blob type InputStream in = new FileInputStream("E:\\images\\cat.jpg"); pstmt.setBlob(2, in); بعد ذلك قم بعمل ()execute لل PreparedStatement. مثال: import java.io.FileInputStream; import java.io.InputStream; import java.sql.Connection; import java.sql.DriverManager; import java.sql.PreparedStatement; public class InsertImageToMySqlDB { public static void main(String args[]) throws Exception{ //Registering the Driver DriverManager.registerDriver(new com.mysql.jdbc.Driver()); //Getting the connection String mysqlUrl = "jdbc:mysql://localhost/sampleDB"; Connection con = DriverManager.getConnection(mysqlUrl, "root", "password"); System.out.println("Connection established......"); PreparedStatement pstmt = con.prepareStatement("INSERT INTO MyTable VALUES(?,?)"); pstmt.setString(1, "sample image"); //Inserting Blob type InputStream in = new FileInputStream("E:\\images\\cat.jpg"); pstmt.setBlob(2, in); //Executing the statement pstmt.execute(); System.out.println("Record inserted......"); } }
  15. لغة بايثون بمفرها تكفى و لا يشترط أن تتعلم لغة أخرى لتتمكن من إيجاد عمل. يوجد العديد من التخصصات لمطوري بايثون مثل: تطوير و اجهات المستخدم الرسومية باستخدام مكتبة TKinter مطور Backend تعلم الآلة و Data Science و لكن هذا المجال يتطلب تعلم الرياضيات و الإحصاء أيضا. web Scraping باستخدام Beautiful Soup أو غيرها و هي عملية استخراج البيانات من المواقع. Automation و هو تنفيذ مهام مثل إدخال البيانات( على سبيل المثال لا الحصر) أوتوماتيكيا بدون تدخل الإنسان لتوفير الوقت و المجهود باختصار تجعل الكومبيوتر يقوم بالمهام بالنيابة عنك. و غيرها الكثير مجالات لغة البايثون لا حصر لها يمكنك اختيار ما شئت منها و هي مطلوبة هذه الأيام بشكل كبير. و مع ذلك اذا أردت تعلم لغة أخرى بعد البايثون فلم يكون الأمر صعب لأن معظم اللغات متشابهة في الأساسيات الاختلاف بينهم فقط طريقة الكتابة syntax
  16. هل يمكنك أن ترفق صورة بالمشكلة؟؟ الأوامر المستخدمة: git add . يجب اضافة نقطة بعد add حتى يقوم باضافة كل الملفات. ثم git commit -m"اكتب أي رسالة هنا " ثم git push في حال اذا كنت عملت على المشروع ثم قمت باضافة الملفات في المستودع manually. اتبع الخطوات التالية: أولا: اذهب الى المستودع الخاص بالمشرع: اضغط على الزر الأخضر ثم قم بنسخ الرابط الذي سيظهر لك:
  17. ربما يساعدك هذا المثال import java.sql.*; import java.awt.*; import javax.swing.*; import java.awt.event.*; public class DisplayDatabaseDataToJTextArea implements ActionListener{ JTextArea textarea=new JTextArea(5,20); JButton b=new JButton("Get Data"); public void createUI() { JFrame f=new JFrame(); f.setLayout(null); JLabel label=new JLabel("Database data : "); b.addActionListener(this); label.setBounds(10,40,100,20); textarea.setBounds(120,40,150,60); b.setBounds(120,110,100,20); f.add(label); f.add(textarea); f.add(b); f.setVisible(true); f.setSize(350,200); } public static void main(String[] args){ DisplayDatabaseDataToJTextArea dd = new DisplayDatabaseDataToJTextArea(); dd.createUI(); } @Override public void actionPerformed(ActionEvent e) { b = (JButton)e.getSource(); getOperation(); } public void getOperation() { try { Class.forName("sun.jdbc.odbc.JdbcOdbcDriver"); Connection con = DriverManager.getConnection("jdbc:odbc:swing"); String sql = "select textAreaData from data"; PreparedStatement ps = con.prepareStatement(sql); ResultSet rs = ps.executeQuery(); while(rs.next()) { textarea.setText(rs.getString(1)); } JOptionPane.showMessageDialog(null, "Retrieved data succesfully.","Record Retrieved", JOptionPane.INFORMATION_MESSAGE); } catch(Exception ex) { JOptionPane.showMessageDialog(null, ex.getMessage(),"Error", JOptionPane.ERROR_MESSAGE); } } } لنفرض أن قاعدةالبيانات كما يلي عندما يعمل البرنامج سيظهر مربع كما في الصورة الثانية. عنما تضغط على زر get Data ستظهر البيانات في ال text area في حالة ال JList package JavaDB_001; import java.awt.Color; import java.sql.Connection; import java.sql.DriverManager; import java.sql.ResultSet; import javax.swing.*; import java.sql.Statement; import java.awt.List; public class Work extends JFrame{ List list; public Work(){ list = new List(); list.setBounds(20,20,440,420); BindList(); add(list); setLayout(null); setSize(500, 500); getContentPane().setBackground(Color.decode("#bdb76b")); setLocationRelativeTo(null); setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); setVisible(true); } //create A function To Bind The List With MySql Database public void BindList(){ Connection con; Statement st; ResultSet rs; try{ con = DriverManager.getConnection("jdbc:mysql://localhost/test_db","root",""); st = con.createStatement(); rs = st.executeQuery("select * from users"); while(rs.next()){ list.add(rs.getString(2)); } }catch(Exception ex){ ex.printStackTrace(); } } public static void main(String[] args){ new Work(); } }
  18. ما هي اللغة التي تستخدمها؟؟ هل يمكنك مشاركة الكود؟؟
  19. لا يوجد لغة أفضل من الأخرى كل لغة و لها تطبيق استخدام اختيارك للغة يعتمد على ما تريد أن تفعل. مع ذلك أنا لا أرجع تعلم php ان كنت لم تبدأ في التعلم بعد من الأفضل أن تتعلم JavaScript أو Python و السسب هو متطلبات سوق العمل على المدى البعيد حيث أن الطلب على php في تناقص مستمر (يمكنك التحقق من ذلك في مكان اقامتك). في حال اخترت JavaScript فأنك لن تضطر لتعلم غيرها لأنها تستخدم في كلى الجانبين frontEnd و BackEnd. انما في حالة قمت باختيار python فانه يجب أن تتعلم معها JavaScript لل frontEnd لان بايثون تستخدم في ال Backend فقط. هل من الممكن انا كون مطور مواقع وتطبيقات ام يجب ان اتخصص في مجال واحد فقط؟؟ يمكن ذلك في حال قمت باختيار javaScript لان js بها مكتبة تستخدم في بناء المواقع React و مكتبة تستخدم في بناء تطبيقات الهواتف و هي React Native هذه التطبيقات تكون هجينة أي أنها تعمل على andoid و IOS دون الحاجة الى كتابة كود منفصل لكل تطبيق. يمكنك تعلم React و من ثم React Native لتقوم بالتطوير للويب و الموبايل . و كلا المكتبتان متماثلتان تماما فلن تجد صعوبة في تعلم React Native بعد أن تتعلم React. هل يمكن تعلم اكثر من لغة برمجة في نفس الوقت؟؟ فقط قم بالتركيز على لغة واحدة في البداية و لا تشتت نفسك لأن هذا سيسبب ضياع وقتك بدون جدوى في الواقع. تعلو الأساسيات في لغة واحدة بعد ذلك ستتمكن من تعلم أي لغة أخرى بسهولة لان الأساسيات واحدة في جميع اللغات الفرق فقط طريقة الكتابة "syntax".
  20. يمكنك استخدام خدمات أمازون لهذا الأمر AWS فتكلفتها ليست مرتفعة و تقدم خدمة pay as you go أي أنك تدفع لما تستخدمه فقط. كما أنها لا تستخدم كل السرفرات معا في نفس الوقت. في حالة زاد الحمل على أحد السيرفرات بشكل كبير أو عن حد معين أنت تحدده فانها تقوم بتوزيع الحمل على كلا الخادمين في هذه الحالة تدفع لكلاهما حتى يقل الحمل أو يعود لحالته الطبيعية. في حالة أن الحمل غير مرتفع سيعمل سيرفر واحد فقط و ستدفع لهذا الخادم بمفره فقط الخادم الذي تستخدمه. كما البيانات ستكون في قاعدة بيانات واحدة فقط يتم مشاركتها مع كل الخوادم فأنت لا تقوم بانشاء قاعدة بيانات لكل خادم على حدة.
  21. نعم بالضبط. أرجو أن يعمل هذه المرة
  22. ما قصدته هنا هو استخدام جملة if كلا الحلين سببا ذلك ؟؟
  23. public void setLocale(String lang) { myLocale = new Locale(lang); Resources res = getResources(); DisplayMetrics dm = res.getDisplayMetrics(); Configuration conf = res.getConfiguration(); conf.locale = myLocale; res.updateConfiguration(conf, dm); onConfigurationChanged(conf); /*Intent refresh = new Intent(this, AndroidLocalize.class); startActivity(refresh);*/ } @Override public void onConfigurationChanged(Configuration newConfig) { // refresh your views here lblLang.setText(R.string.langselection); super.onConfigurationChanged(newConfig); // Checks the active language if (newConfig.locale == Locale.ENGLISH) { Toast.makeText(this, "English", Toast.LENGTH_SHORT).show(); } else if (newConfig.locale == Locale.FRENCH){ Toast.makeText(this, "French", Toast.LENGTH_SHORT).show(); } } declare in Manifest android:configChanges="locale" ماذا عن هذا ؟؟ أو يمكنك استبدال هذا الجزء Intent refresh = new Intent(activity, StartupActivity.class); activity.startActivity(refresh); بهذه ال method من activity class: recreate();
×
×
  • أضف...