Salam, semua! Bagaimanakah perkembangan Hacktoberfest untuk anda tahun ini? Secara peribadi, saya sangat menikmatinya setakat ini. Kami kini telah memasuki minggu kedua bulan Oktober, yang bermaksud sudah tiba masanya untuk permintaan tarik kedua (PR) saya daripada empat yang diperlukan untuk menyelesaikan cabaran. Minggu ini, saya memutuskan untuk meningkatkan diri saya lebih jauh dengan menyumbang kepada pangkalan kod projek dan bukannya menumpukan pada dokumentasi semata-mata, seperti yang saya lakukan pada Minggu 1.
Dalam PR pertama Hacktoberfest saya, saya berusaha untuk menambah baik dokumentasi projek. Sebagai seorang pemula, saya ingin memudahkan proses dengan tugas yang lebih kecil dan boleh diurus. Walau bagaimanapun, untuk minggu kedua ini, saya memutuskan untuk mengambil sesuatu yang lebih teknikal: menyumbang kepada projek GitExplorer.
GitExplorer ialah aplikasi web yang memudahkan penemuan dan penerokaan repositori GitHub teratas. Ia membolehkan pengguna menapis repositori berdasarkan bahasa pengaturcaraan, topik dan kriteria pengisihan lain. Walaupun UI masih dalam pembangunan, projek ini menawarkan peluang pembelajaran yang berharga untuk penyumbang, terutamanya pemula. Banyak isu dalam repositori ditandakan sebagai "isu pertama yang bagus", menjadikannya tempat yang bagus untuk bermula.
Untuk sumbangan saya, saya memilih untuk melaksanakan ciri navigasi yang meningkatkan pengalaman pengguna semasa menyemak imbas repositori.
Projek pada mulanya mempunyai butang untuk menavigasi ke halaman seterusnya repositori, tetapi ia tidak mempunyai sistem penomboran penuh. Pengguna tidak dapat menavigasi ke sana ke mari dengan mudah antara halaman atau melompat ke halaman tertentu, yang menimbulkan isu kebolehgunaan. Saya menyedari pengehadan ini dan meminta penyelenggara projek untuk menyerahkan isu tersebut kepada saya.
Semasa saya mengusahakan projek itu, satu aspek yang menonjol (dan tidak dengan cara yang baik) ialah cara pangkalan kod distrukturkan. Projek ini mempunyai semua logik yang ditulis ke dalam satu fail script.js, yang boleh menjadi sukar untuk diselenggara apabila projek itu berkembang. Walaupun saya tidak mahu membuat perubahan besar dalam PR ini—memandangkan ia hanya memfokuskan pada butang penomboran—saya bercadang untuk mencadangkan pemfaktoran semula struktur kod dalam keluaran akan datang.
Sebenarnya, sebelum itu ada pembangun lain yang mencipta butang yang menavigasi ke halaman seterusnya, tetapi ia tidak bagus untuk pengalaman Pengguna apabila mereka ingin menavigasi ke sana ke mari, serta halaman tertentu. Atas sebab ini, saya mengulas untuk meminta penyelenggara memberikan isu ini untuk saya.
Semasa saya menjalankan projek ini, ada satu perkara yang saya tidak suka mengenainya. Ia adalah cara penyelenggara menyusun asas kodnya semasa dia menulis setiap logik ke dalam hanya 1 fail script.js. Walau bagaimanapun, saya tidak mahu mempunyai banyak pembetulan dalam isu ini kerana ia hanya meminta butang penomboran. Saya akan mencipta isu baharu yang meminta untuk menstruktur semula pangkalan kod kemudian.
Fungsi sedia ada hanya mempunyai satu butang untuk menavigasi antara halaman, dengan 10 repositori dipaparkan setiap halaman. Matlamat saya adalah untuk melaksanakan sistem penomboran yang lebih mesra pengguna dengan butang halaman "Sebelumnya," "Seterusnya," dan bernombor. Ini akan membolehkan pengguna melompat terus ke halaman yang mereka minati, menjadikan pengalaman navigasi lebih lancar.
Kekangan API GitHub:
Semasa melaksanakan penomboran, saya menghadapi had dengan API GitHub, yang mengehadkan hasil kepada 1,000 item. Jika carian menghasilkan lebih daripada 1,000 repositori, percubaan untuk menavigasi melebihi had ini mengakibatkan ralat, mengembalikan data yang tidak ditentukan. Memandangkan reka bentuk memaparkan 10 repositori setiap halaman, saya mengehadkan bilangan halaman pada 100 untuk mengelak daripada terkena isu ini.
Perubahan Kod:
Saya memperkenalkan
Logik teras untuk penomboran terkandung dalam dua fungsi baharu:
Penambahbaikan CSS:
Untuk reka bentuk penomboran, saya memastikan butang halaman semasa dilumpuhkan dan digayakan secara berbeza untuk menunjukkan keadaannya. Butang halaman lain menerima kesan tuding untuk meningkatkan interaktiviti dan meningkatkan pengalaman pengguna.
これで、Hacktoberfest の第 2 週に対する私の投稿が終わりました。私は現在、来週貢献できる別のリポジトリを探しています。理想的には、もう少し挑戦的なプロジェクトを見つけて、自分自身を追い込み続け、徐々にスキルを向上させたいと思っています。
読んでいただきありがとうございます。私のハクトーバーフェストの旅についてもっと共有するのを楽しみにしています!
以上がコードの貢献をさらに深く掘り下げるハクトーバーフェスト週間の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。