Saya pikir sebagian besar pembaca tidak memiliki masalah penglihatan, tetapi bertanya-tanya apa yang akan terjadi jika penglihatan mereka gagal. Seharusnya ada gambar, tapi saya tidak melihatnya, jadi mereka yang tertarik cara membuat kode tanpa melihat layar, saya minta kucing.
Kebetulan sejak kecil saya memiliki ketajaman visual yang sangat rendah. Sepertinya saya melihat gambar besar tanpa fokus dengan banyak suara.
Saya lulusan Institut Matematika, Mekanika dan Ilmu Komputer. Sekarang saya sedang mengembangkan aplikasi untuk pengenalan perangkat medis.
Di akhir sekolah, saya memutuskan untuk belajar sebagai programmer, saya sangat suka, dan masih suka, bermain-main dengan komputer. Saya ingin tidak hanya menggunakan kerajinan orang lain, tetapi juga belajar bagaimana membuat aplikasi sendiri.
Pada saat itu, saya sudah menjadi pengguna Windows yang berpengalaman. Dari sudut pandang pengguna buta, saya percaya diri mengendalikan komputer menggunakan kedua pembaca layar, yang akan dibahas di bawah. Dari sudut pandang pengguna yang terlihat, saya tahu apa dan di mana saya bisa mengubah sistem sehingga berfungsi lagi, dan bahkan mendapatkan penghasilan pertama dari ini.
Untuk mencetak teks dari layar komputer, aplikasi khusus (pembaca layar) digunakan . Di bawah Windows, yang paling populer adalah Jaws dari Freedom Scientific dan open source NVDA. . Sistem Windows bahkan pada waktu itu sudah diatur sehingga memungkinkan untuk menggunakannya sepenuhnya hanya menggunakan kedua pembaca layar.
Tentu saja, ketika datang untuk memilih bios atau menginstal ulang sistem, Anda harus mendapatkan bantuan orang yang terlihat.
Dalam perkembangannya, lingkaran masalah terlihat sedikit berbeda.
Penulisan kode
Kode, tentu saja, dapat ditulis dalam notepad di Windows, karena sangat baik disuarakan oleh Jaws dan NVDA. Tetapi di luar kerangka kerja Pascal, di mana kita, sebagai suatu peraturan, diajarkan dasar-dasar pemrograman tanpa penyelesaian otomatis sama sekali.
Semua tugas yang saya lakukan hanya di komputer saya, karena saya tidak ingin menyiksa admin di laboratorium dengan instalasi NVDA, dan saya hanya diam tentang harga Rahang.
Lingkungan Pascal ABC disuarakan cukup untuk teori yang kami ajarkan. Fokus pembaca layar adalah titik abstrak yang menunjukkan area GUI yang sekarang disuarakan oleh pembaca layar, itu sendiri sangat cocok di bidang editor teks, dan ketika berhasil dikompilasi dan diluncurkan, itu pindah ke konsol. Jika tidak berhasil, mukjizat mulai menggunakan berbagai trik pembaca layar, yang saya tidak akan membebani pembaca dengan dalam artikel ini.
Baru pada akhir mempelajari topik ini, laptop saya dibagi menjadi sampul dan sisanya, dan semua perkembangan saya di Windows berhenti. Satu-satunya hal yang dapat saya katakan dari apa yang pernah saya coba gunakan untuk pengembangan dari Windows dari IDE serius adalah bahwa hanya Visual Studio yang biasanya disuarakan sejak versi 2015. Dan semua fitur yang mudah digunakan, seperti pelengkapan otomatis, hanya tersedia menggunakan rahang berbayar.
Jadi Laptop yang setia dikalahkan, kuda perang baru diperlukan.
Mesin berikutnya yang saya miliki adalah MacBook. Saya tahu itu mahal, tapi pertama-tama itu adalah tahun-tahun ketika sekitar 30 Yaroslavl diberikan untuk satu McKinley, dan kedua, itu sama sekali tidak lebih nyaman bagi orang buta.
Sejak itu, hingga hari ini saya telah mengembangkan dalam Xcode, telah disuarakan dengan sangat baik menggunakan VoiceOver , meskipun sangat terbatas dalam pilihan bahasa pengembangan: C, C ++, Objective-C dan Swift. Tidak peduli berapa banyak saya bermimpi memulai menulis omong kosong dengan Python, itu tidak berhasil. Dalam Visual Studio untuk Mac, Python belum dikirim, dan VSCode, tidak peduli berapa banyak pengembang bernyanyi, disuarakan sedemikian rupa sehingga akan lebih baik untuk tidak disuarakan. T.E. Jika aplikasi tidak disuarakan, pembaca layar menyuarakan bidang atau tombol kosong, atau benar-benar diam, dalam VSCode antarmuka terlihat seperti campuran elemen yang tidak dapat dipahami, sama sekali tidak terkait, setengah tidak klik, setengah memunculkan beberapa bingkai baru hampir di ujung jendela lainnya.
Proses pengembangan
Awal pengembangan tidak berbeda sama sekali dengan apa yang dilakukan setiap orang: membuat proyek, membuat repositori, jika diperlukan, terutama karena Xcode GIT membuat repositori itu sendiri.
Seperti yang saya katakan di atas, Xcode terbatas dalam pilihan bahasa, jadi sebagai aturan saya menggunakan C ++ atau Swift.
Xcode sendiri menciptakan file Utama dan menjelaskan fungsi Utama itu sendiri.
Seperti orang lain, saya menambahkan file sesuai kebutuhan, tetapi yang, sayangnya, tidak dapat dihindari dalam pengembangan proyek yang kompleks, merupakan pelengkapan otomatis, mulai dari cuplikan berbagai bagian kode, seperti deskripsi kelas, atau loop yang hanya mempercepat pengembangan, dan diakhiri dengan metode atau fungsi kelas dengan nama panjang yang mudah diingat yang sangat sulit diingat tanpa akses ke memori visual.
Debugging
Kode tertulis perlu di-debug. Nah, ketika setelah menulis proyek berkumpul, program dimulai dan langsung bekerja dengan benar, tetapi kapan itu?
Pertama, kesalahan sintaksis, semantik, dan tanda baca. Navigator kesalahan di Xcode tersedia, dan sambil menyoroti kesalahan tertentu, ia memindahkan kursor pengeditan ke baris yang diinginkan, tetapi buruk bahwa itu tidak menunjukkan jumlah simbol di mana ia melihat kesalahan ini, atau tidak mengucapkan VO, dan hanya tersisa VO .
Saya ingin mengatakan secara terpisah untuk tanda kurung, sejauh yang saya tahu, yang terlihat juga menderita tanda kurung ekstra terbuka atau tertutup, tetapi jika orang yang melihatnya dapat mencoba untuk mengidentifikasi mereka secara visual, jika dia masih belajar sesuatu dan tidak berantakan, tetapi kode menulis, dia akan mencari tahu kebingungan penjepit . Tanpa mata - ini buruk, sebagian membantu adalah bahwa potongan biasanya menyertakan jumlah tanda kurung yang diperlukan, dan IDE yang peduli menutup tanda kurung jika pengguna membukanya, tetapi di sini kesalahan mungkin terjadi.
Satu-satunya cara adalah dengan memotong tubuh fungsi dari awal, untuk memulai, jika itu, untuk mengembalikan tubuh, dan seterusnya dengan setiap blok kode, sampai braket terdeteksi.
Proyek ini dirakit, program dimulai, dan [LLDB] muncul di konsol di bawah daripada yang diharapkan dan diinginkan "program berakhir dengan kode keluar: 0", saya tidak dapat menggunakan debugger tingkat rendah, jadi saya melihat tulisan ini sehingga ada sesuatu dalam logika program salah.
Pesan debugger jarang dipahami. Oleh karena itu, Anda dapat menyodok seluruh program dengan breakpoints, tetapi tanpa terlihat, sangat sulit untuk memahami pada titik mana Anda berhenti, atau di mana program crash. Oleh karena itu, saya secara pribadi mengatur kesimpulan seperti "tes #" di berbagai bagian Main, jika aplikasi tidak menampilkan apa pun, jika ditampilkan, saya mengatur kesimpulan di mana aplikasi mogok, misalnya, mulai dari pintu masuk ke fungsi yang mencurigakan, dan melihat apa yang dihasilkan oleh program. , setelah itu tetap hanya untuk menangkap kesalahan antara kesimpulan tercapai dan tidak tercapai.
Melakukan tugas tes untuk satu perusahaan, saya menguasai panel Tampilan Variabel, ini adalah panel di daerah debugger, yang menampilkan variabel langsung jika breakpoint diatur, berkat itu saya mem-parsing serial json ke dalam kamus, dengan array kamus yang tertanam.
Kontrol versi
Xcode sendiri dapat bekerja dengan GIT, tetapi ada hal-hal yang paling baik dilakukan melalui terminal.
Terminal
Terminal di Mac disuarakan, maksud saya standar. Tentu saja, itu tidak nyaman ketika VO berbicara semua teks yang ditampilkan, tetapi menggunakan kemampuan VO Anda dapat mendengarkan output dengan kata-kata, garis dan bahkan oleh karakter. Jadi Anda dapat menggunakan terminal, dan bahkan salah satu editor teks konsol, nano disuarakan dengan sangat cemerlang. Selain itu, terminal suara memungkinkan programmer buta untuk menggunakan manajer paket seperti Home brew atau cocoapods.
Kesimpulan
Memiliki masalah penglihatan, Anda bisa menjadi atau tetap menjadi pengembang. Ada cukup banyak program akses layar berbeda untuk platform yang berbeda: Jaws, NVDA dan Narrator untuk Windows, orca di GNOME untuk Linux, VoiceOver pada Mac, dan editor kode yang disuarakan, seperti: Visual Studio pada windows dan Xcode pada Mac. Terutama karena ada laporan yang menambahkan aksesibilitas ke beberapa editor, dan saya yakin bahwa seiring waktu, VSCode dan Gagasan lainnya dapat digunakan oleh pengembang yang buta.
Jadi, tentu saja, jaga penglihatan Anda dalam setiap cara yang mungkin, tetapi jika itu terjadi, Anda tidak akan harus meninggalkan profesi, Anda hanya perlu beradaptasi dengan program akses layar dan mengambil pendekatan saya atau membuat sendiri.
Jika Anda tertarik, tuliskan di komentar bidang pengembangan mana yang Anda minati, dan saya akan membahasnya di artikel mendatang. Saya sedang berpikir untuk menulis tentang bagaimana saya mengembangkan GUI, tetapi saya terbuka untuk saran Anda.