cari
Rumahpembangunan bahagian belakangtutorial phpLihat Hack, pengganti PHP dalam HHVM

3

anda boleh menggunakan kotak vagrant yang dibuat sebelumnya untuk menjalankan coretan kod dari artikel ini. A Look at Hack, the PHP Replacement in HHVM

Takeaways Key

Lihat Hack, pengganti PHP dalam HHVM

Hack, penggantian PHP dalam HHVM, adalah bahasa yang ditaip secara statik, yang bermaksud anda mesti menyediakan jenis untuk semua pembolehubah dalam permohonan anda. Walau bagaimanapun, Hack menggunakan sistem "menaip secara beransur -ansur", di mana jenis hanya dijangka dalam mod "ketat", dan walaupun itu, Hack cukup pintar untuk menyimpulkan jenis pembolehubah tempatan.

Hack memperkenalkan beberapa ciri yang bertambah baik pada PHP, termasuk atribut pengguna, yang merupakan pelaksanaan anotasi Facebook, dan XHP, lanjutan PHP yang menambah sintaks bahasa supaya serpihan dokumen XML menjadi ungkapan PHP yang sah.

Walaupun kelebihan Hack dan HHVM, masih terdapat halangan untuk pengangkatan mereka, termasuk kekurangan sokongan untuk sambungan PECL dan fakta bahawa HHVM hanya disokong oleh Facebook. Walau bagaimanapun, Facebook mempunyai alat yang secara automatik dapat menyusun sambungan PHP untuk sasaran HHVM, dan membangunkan lanjutan untuk HHVM dilaporkan lebih mudah daripada membangunkan PHP.

mengapa jenis?
  • Di bahagian pertama artikel yang kita lihat bahawa Hack sebenarnya ditaip secara statik. Ini bermakna anda mesti menyediakan jenis untuk semua pembolehubah dalam permohonan anda. Sebagai peringatan, PHP ditaip secara dinamik supaya anda tidak perlu menaip pembolehubah anda walaupun anda boleh menggunakan jenis petunjuk untuk argumen fungsi.
  • Tetapi tunggu, adakah itu bermakna anda perlu menyediakan jenis untuk setiap pembolehubah aplikasi anda? Tidak betul -betul, dan kita akan melihat butirannya.
  • CodeBase Facebook terdiri daripada beratus -ratus juta baris kod dan menambah jenis di mana -mana sebelum mereka boleh beralih ke hack akan menjadi beban sebenar. Jadi mereka telah datang dengan "menaip secara beransur -ansur": Hack mengharapkan jenis dalam mod "ketat" sahaja. Dalam jenis mod bukan tegas hanya akan diambil dalam akaun di mana ia hadir.
memasuki mod yang ketat semudah menukar tag permulaan hack dari Walaupun dalam mod yang ketat, anda tidak perlu memberi penjelasan semua pembolehubah. Itu kerana Hack cukup pintar untuk menyimpulkan jenis pembolehubah tempatan. Anotasi jenis hanya diperlukan untuk sifat kelas, hujah fungsi dan nilai pulangan. Saya sebaliknya akan mengesyorkan untuk memberi penjelasan pembolehubah tempatan apabila ia dapat membantu pemahaman kod anda.

mari kita lihat contoh:

Kod sampel untuk bahagian ini terletak di www/jenis-checker/index.php dan anda dapat melihat outputnya dengan menunjuk penyemak imbas anda ke http: // localhost: 8080/type-checker/.

Mesej ralat pertama tidak menghairankan: panggilan tambah (1, "a") menghasilkan ralat kerana menambah () mengharapkan hujah kedua menjadi integer.

Mesej ralat kedua lebih tidak dijangka: ralat tidak dihasilkan dengan memanggil add_array ([1, "a"]). Ia sebenarnya panggilan untuk menambah (1, "a") di dalam add_array () yang menghasilkan kesilapan! Seseorang boleh menjangkakan bahawa lulus [1, "a"] akan mencetuskan kesilapan kerana ia bukan array .

Perkara itu adalah bahawa pemeriksaan runtime HHVM adalah jarang agar tidak memberi kesan kepada prestasi: ia tidak melelehkan objek. Pada ketika ini, anda mungkin akan mempersoalkan kegunaan sistem jenis hack! Tetapi jangan risau, ada jawapan yang mudah, "jenis pemeriksa": ia akan menangkap apa -apa jenis ketidakcocokan termasuk yang dari contoh sebelumnya. Jangan cari dalam repositori HHVM, ia belum dikeluarkan oleh Facebook.

Pemeriksa jenis dilaksanakan sebagai pelayan yang menonton fail anda untuk perubahan. Setiap kali ia mengesan perubahan, ia akan mengimbas fail yang diubahsuai bersama -sama dengan kebergantungannya untuk kesilapan. Kesilapan dilaporkan masa nyata supaya anda tidak perlu menjalankan kod tersebut. Ia telah direka untuk bekerja dengan cepat walaupun pada skala FB.

Anda kini harus yakin bahawa sistem jenis berfungsi hebat, tetapi apakah manfaatnya? Ia membolehkan menangkap kesilapan pemaju dalam masa nyata, menghasilkan kod yang lebih efisien: fungsi php add () terlebih dahulu perlu menyemak jenis $ a dan $ b (iaitu rentetan, null, ...) mungkin menukarnya ke nombor dan hanya kemudian Lakukan tambahan. Sedangkan dengan hack fungsi tambah () di atas menambah dua bilangan bulat bukan null yang merupakan operasi yang sangat cepat dalam bahasa pemasangan (seperti yang dihasilkan oleh HHVM JIT).

Jika sebagai pemaju, anda sudah menggunakan anotasi jenis PHP dan anotasi PHPDOC, beralih ke mod yang ketat harus menjadi tidak ada yang lebih baik. Kod anda akan menjadi lebih selamat dan lebih cepat-ambil perhatian bahawa beberapa alat QA yang sedia ada, seperti Scrutinizer sudah menggunakan kesimpulan jenis untuk memeriksa kod anda, walaupun mereka tidak masa nyata.

Jika anda menggunakan PHP kebanyakannya kerana sifatnya yang dinamik, maka anda mungkin mahu berpegang pada mod bukan tegas.

Atribut Pengguna

Penggunaan anotasi telah meningkat secara dramatik di dunia PHP pada tahun -tahun terakhir. Bagi mereka yang tidak biasa dengan anotasi, mereka adalah metadata yang boleh ditambah kepada kelas, antara muka, sifat, pembolehubah dan fungsi/kaedah.

Doktrin ORM mungkin merupakan salah satu projek PHP yang pertama untuk menggunakan anotasi yang luas. Berikut adalah contoh konfigurasi model dari dokumentasi doktrin:

<span><span><?hh // strict
</span></span><span>
</span><span><span>require "/vagrant/www/xhp/php-lib/init.php";
</span></span><span>
</span><span><span>// ...
</span></span><span>
</span><span><span>function add(int $a, int $b): int {
</span></span><span>    <span>return $a + $b;
</span></span><span><span>}
</span></span><span>
</span><span><span>// ERROR(calling "add()" on l.17) : Argument 2 passed to add() must be an
</span></span><span><span>// instance of int, string given
</span></span><span><span>echo <p>add(1, "a") = {add(1, "a")}</p>;
</span></span><span>
</span><span><span>// ERROR(calling "add()" on l.22) : Argument 2 passed to add() must be an
</span></span><span><span>// instance of int, string given
</span></span><span><span>function add_array(array<int> $a): int {
</int></span></span><span>    <span>return array_reduce($a, "add", 0);
</span></span><span><span>}
</span></span><span>
</span><span><span>echo <p>add_array([1, "a"]) = {add_array([1, "a"])}</p>;</span></span></span>

php, tidak seperti banyak bahasa lain, tidak mempunyai sokongan terbina dalam anotasi. Walau bagaimanapun, perpustakaan anotasi doktrin digunakan secara meluas untuk mengekstrak metadata dari docblocks. RFC yang mencadangkan sokongan terbina dalam anotasi dalam PHP telah ditolak pada tahun 2011.

Atribut pengguna ialah pelaksanaan anotasi Facebook. Mereka tertutup dalam > dan sintaks mereka berbeza sedikit dari anotasi doktrin:

<span><span><?hh // strict
</span></span><span>
</span><span><span>require "/vagrant/www/xhp/php-lib/init.php";
</span></span><span>
</span><span><span>// ...
</span></span><span>
</span><span><span>function add(int $a, int $b): int {
</span></span><span>    <span>return $a + $b;
</span></span><span><span>}
</span></span><span>
</span><span><span>// ERROR(calling "add()" on l.17) : Argument 2 passed to add() must be an
</span></span><span><span>// instance of int, string given
</span></span><span><span>echo <p>add(1, "a") = {add(1, "a")}</p>;
</span></span><span>
</span><span><span>// ERROR(calling "add()" on l.22) : Argument 2 passed to add() must be an
</span></span><span><span>// instance of int, string given
</span></span><span><span>function add_array(array<int> $a): int {
</int></span></span><span>    <span>return array_reduce($a, "add", 0);
</span></span><span><span>}
</span></span><span>
</span><span><span>echo <p>add_array([1, "a"]) = {add_array([1, "a"])}</p>;</span></span></span>

Anda harus perhatikan bahawa atribut pengguna, tidak mengejutkan, diakses dari API Refleksi. Juga ambil perhatian bahawa sokongan untuk anotasi pada sifat kelas masih akan dilaksanakan.

Kod sampel untuk bahagian ini terletak di www/atribut/index.php dan anda dapat melihat outputnya dengan menunjuk penyemak imbas anda ke http: // localhost: 8080/atribut/.

xhp

Sekarang anda harus mempunyai foretaste apa yang XHP adalah seperti yang kita telah menggunakannya dari contoh kod pertama artikel ini. Biarkan saya memetik Facebook untuk definisi yang lebih lengkap "XHP adalah lanjutan PHP yang menambah sintaks bahasa supaya serpihan dokumen XML menjadi ungkapan PHP yang sah.". Perhatikan bahawa XHP boleh didapati sebagai lanjutan PHP dan HHVM mempunyai sokongan asli.

dengan XHP, anda boleh menggunakan

{$ hello}

di mana anda akan menggunakan "

$ hello

" dengan vanila php. Walaupun contoh sebelumnya adalah remeh, XHP mempunyai lebih banyak tawaran:
  • Ia akan mengesahkan markup anda supaya anda tidak boleh menulis HTML tidak sah - fikir tag penutup yang hilang, typos dalam nama parameter, ...
  • Ia menyediakan beberapa tahap melarikan diri kontekstual - kerana enjin menyedari apa yang anda rendering, ia dapat melepaskan nilai HTML dan atribut dengan sewajarnya untuk mencegah serangan XSS,
  • anda boleh menulis tag anda sendiri dengan memperluaskan atau membungkus tag sedia ada.

mari kita lihat contoh:

<span><span><?php </span></span><span><span>/** @Entity */
</span></span><span><span>class Message
</span></span><span><span>{
</span></span><span>    <span>/** @Column(type="integer") */
</span></span><span>    <span>private $id;
</span></span><span>    <span>/** @Column(length=140) */
</span></span><span>    <span>private $text;
</span></span><span>    <span>/** @Column(type="datetime", name="posted_at") */
</span></span><span>    <span>private $postedAt;
</span></span><span><span>}</span></span></span>

kod sampel penuh untuk bahagian ini terletak di www/hhxhp/index.php dan anda dapat melihat outputnya dengan menunjuk penyemak imbas anda ke http: // localhost: 8080/hhxhp/.

Dalam contoh ini, kita mulakan dengan menentukan tag adat yang akan menjadikan tag , ini dilakukan dengan mengisytiharkan kelas: TUTO: Contoh. Tag tersuai kami memerlukan dua atribut, contoh dan semasa tetapi tidak dibenarkan untuk mempunyai anak (kanak -kanak kosong;).

Semasa kami memperluaskan asas: x: elemen, kita harus mengatasi kaedah render () untuk mengembalikan markup adat kami sebagai XHP.

Facebook menggunakan bahasa XHP sebagai asas untuk perpustakaan UI yang akhirnya dapat dibuka juga.

pelaksanaan kod asynchronous

Saya mempunyai rancangan untuk menulis seksyen mengenai pelaksanaan kod tak segerak setelah melihat beberapa ujian dalam repo HHVM. Walau bagaimanapun saya tidak dapat datang dengan contoh kerja. Ia mungkin disebabkan oleh pemahaman saya tentang topik atau hakikat bahawa Facebook belum mengeluarkan semua kod yang berkaitan. Saya mungkin menulis tentang ini sekali Facebook mengeluarkan beberapa dokumentasi.

Ciri -ciri lain

Terdapat banyak perkara mengenai ekosistem HHVM yang tidak dilindungi oleh artikel ini, kerana saya terpaksa membuat pilihan mengenai apa yang perlu disertakan dan kerana Facebook belum mengeluarkan semua kod dan dokumentasi lagi.

Beberapa perkara yang patut disebutkan adalah sokongan baru -baru ini untuk FastCGI dan debugger bersepadu.

Facebook juga mempamerkan "FBIDE", IDE berasaskan web yang memaparkan kesempurnaan auto, penonjolan sintaks, pengeditan kolaboratif dan banyak lagi. Kita boleh mengharapkan ia tersedia pada masa akan datang.

Ressources External

Anda boleh mendapatkan lebih banyak maklumat dalam beberapa ceramah dan slaid dari pasukan Facebook yang saya gunakan untuk menyediakan artikel ini. Saya pertama kali mendengar Hack dengan mendengar ceramah "mengambil php serius" dari Keith Adams dan satu lagi ceramah hebat dari Julien Verlaguet. Slaid Nice Sara Golemon juga sangat membantu saya.

Kesimpulan

Facebook komited untuk menyediakan pariti ciri dengan PHP untuk HHVM. Menjelang akhir tahun lepas, HHVM sudah dapat lulus 98.5% ujian unit untuk 20 kerangka PHP yang paling popular. Keadaan ini sedikit bertambah baik sejak itu.

Sehingga hari ini HHVM melaksanakan kod PHP lebih cepat daripada PHP sambil memakan memori yang kurang. Ini akan menjadi kelebihan yang besar memihak kepada HHVM apabila pariti akhirnya dicapai. Di samping itu, anda boleh mula memperkenalkan hack untuk mendapatkan lebih banyak prestasi dan meningkatkan keselamatan kod dengan bantuan pemeriksa jenis - ingat anda tidak perlu menukar asas kod keseluruhan anda sekaligus terima kasih kepada menaip secara beransur -ansur dan fakta bahawa hack dan PHP adalah antara yang boleh dikendalikan.

Dalam beberapa bulan dari sekarang, kita boleh mengharapkan lebih banyak dokumentasi dan perkakas dari Facebook. Anda juga boleh membantu dengan menyumbang kepada projek di GitHub, terdapat juga program karunia.

Salah satu masalah yang dilaporkan oleh komuniti PHP yang mungkin merupakan halangan utama untuk diterima pakai adalah kekurangan sokongan untuk sambungan PECL. Untuk mengurangkan ini, Facebook mempunyai alat yang secara automatik dapat menyusun sambungan PHP untuk sasaran HHVM; Kadar kejayaan jauh dari 100% walaupun. Perkara lain yang boleh membantu di sini ialah membangunkan lanjutan untuk HHVM adalah lebih mudah daripada membangun untuk php.

Hakikat bahawa HHVM disokong oleh Facebook sahaja, dan keperluan untuk menandatangani CLA sebelum menyumbang kepada HHVM kelihatan menyusahkan orang lain.

Saya secara peribadi berfikir bahawa jumlah persaingan yang saksama adalah perkara yang hebat untuk masa depan php.

untuk membuat kesimpulan, saya ingin mengucapkan terima kasih kepada pasukan Facebook untuk kerja yang luar biasa yang telah mereka lakukan dan mempunyai sumber terbuka. Sekiranya anda ingin melihat lebih banyak artikel SitePoint mengenai HHVM dan Hack pada masa akan datang jangan ragu untuk mencadangkan topik dengan menambahkan komen di bawah.

Soalan Lazim (Soalan Lazim) Mengenai Hack PHP Penggantian HHVM

Apakah penggantian php hack hhvm?

Hack PHP penggantian HHVM, juga dikenali sebagai Hiphop Virtual Machine, adalah mesin maya sumber terbuka yang direka untuk melaksanakan program yang ditulis dalam hack dan php. HHVM menggunakan pendekatan kompilasi tepat masa (JIT) untuk mencapai prestasi unggul sambil mengekalkan fleksibiliti pembangunan yang disediakan oleh PHP.

Bagaimanakah HHVM berbeza daripada php tradisional? Walaupun PHP menafsirkan kod semasa runtime, HHVM menyusun PHP atau kod hack ke bytecode peringkat tinggi yang kemudian diterjemahkan ke dalam kod mesin. Proses ini membolehkan prestasi dan kecekapan yang lebih baik.

Apakah bahasa pengaturcaraan hack? Ia adalah dialek PHP dan termasuk ciri -ciri baru seperti menaip statik, anotasi jenis, dan generik, yang tidak terdapat dalam php tradisional. Beberapa ciri yang bertambah baik pada PHP. Ia termasuk menaip statik, yang boleh menghalang kesilapan runtime yang berpotensi. Ia juga menyokong pengaturcaraan asynchronous, yang membolehkan pengendalian operasi I/O yang lebih cekap. Di samping itu, Hack termasuk koleksi, yang berprestasi tinggi, struktur data yang sangat ditaip. Mungkin beberapa perbezaan disebabkan sifat proses penyusunan JIT. Walau bagaimanapun, HHVM menyediakan alat yang disebut 'HHVM-Autoload' yang dapat membantu dalam memindahkan kod PHP sedia ada ke HHVM. -Time (JIT) pendekatan kompilasi. Ini bermakna bahawa bukannya mentafsirkan kod PHP semasa runtime, HHVM menyusun kod tersebut ke dalam bytecode peringkat tinggi yang kemudian diterjemahkan ke dalam kod mesin. Proses ini membolehkan pelaksanaan yang lebih cepat dan kecekapan yang lebih baik. Oleh itu, untuk menggunakan Hack, anda perlu memasang HHVM. Ini bermakna bahawa jenis pembolehubah diperiksa pada masa penyusunan, yang dapat membantu mencegah kesilapan runtime yang berpotensi. , termasuk menaip statik, pengaturcaraan asynchronous, dan koleksi. Ciri -ciri ini dapat membantu meningkatkan keselamatan kod, kecekapan, dan prestasi.

Bagaimana saya boleh mula menggunakan HHVM dan Hack? Setelah dipasang, anda boleh menulis kod anda dalam hack dan jalankan menggunakan runtime HHVM. Terdapat juga beberapa sumber dan tutorial yang tersedia dalam talian untuk membantu anda memulakan.

Atas ialah kandungan terperinci Lihat Hack, pengganti PHP dalam HHVM. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Bagaimanakah PHP mengenal pasti sesi pengguna?Bagaimanakah PHP mengenal pasti sesi pengguna?May 01, 2025 am 12:23 AM

Phpidentifierauser'sSessionusingSessionCookiesandSessionIds.1) whensession_start () ISCALLED, phpGeneratesAuniquesessionIdstoredinacookienamedPhpsessidontheUserer'sBrowser.2) ThisIdallowsPhptoretRievesSessionDataFromtheserver.

Apakah beberapa amalan terbaik untuk mendapatkan sesi PHP?Apakah beberapa amalan terbaik untuk mendapatkan sesi PHP?May 01, 2025 am 12:22 AM

Keselamatan sesi PHP boleh dicapai melalui langkah -langkah berikut: 1. Gunakan session_regenerate_id () untuk menjana semula ID sesi apabila pengguna log masuk atau merupakan operasi penting. 2. Sulitkan ID sesi penghantaran melalui protokol HTTPS. 3. Gunakan session_save_path () untuk menentukan direktori selamat untuk menyimpan data sesi dan menetapkan kebenaran dengan betul.

Di manakah fail sesi php disimpan secara lalai?Di manakah fail sesi php disimpan secara lalai?May 01, 2025 am 12:15 AM

PhpsessionFileSarestoredIntHedirectorySpecifiedBySession.save_path, biasanya/tmponunix-likesystemsorc: \ windows \ temponwindows.tocustomethis: 1) usession_save_path ()

Bagaimana anda mengambil data dari sesi PHP?Bagaimana anda mengambil data dari sesi PHP?May 01, 2025 am 12:11 AM

ToretrievedataFromaphpsession, startTheSessionWithSsion_start () andaccessVariablesInthe $ _SessionArray.Forexample: 1) startTheSession: session_start ()

Bagaimana anda boleh menggunakan sesi untuk melaksanakan keranjang belanja?Bagaimana anda boleh menggunakan sesi untuk melaksanakan keranjang belanja?May 01, 2025 am 12:10 AM

Langkah -langkah untuk membina sistem keranjang belanja yang cekap menggunakan sesi termasuk: 1) Memahami definisi dan fungsi sesi. Sesi ini adalah mekanisme penyimpanan sisi pelayan yang digunakan untuk mengekalkan status pengguna merentasi permintaan; 2) melaksanakan pengurusan sesi asas, seperti menambah produk ke keranjang belanja; 3) memperluas penggunaan lanjutan, menyokong pengurusan kuantiti produk dan penghapusan; 4) Mengoptimumkan prestasi dan keselamatan, dengan berterusan data sesi dan menggunakan pengecam sesi yang selamat.

Bagaimana anda membuat dan menggunakan antara muka dalam PHP?Bagaimana anda membuat dan menggunakan antara muka dalam PHP?Apr 30, 2025 pm 03:40 PM

Artikel ini menerangkan cara membuat, melaksanakan, dan menggunakan antara muka dalam PHP, memberi tumpuan kepada manfaat mereka untuk organisasi kod dan penyelenggaraan.

Apakah perbezaan antara crypt () dan password_hash ()?Apakah perbezaan antara crypt () dan password_hash ()?Apr 30, 2025 pm 03:39 PM

Artikel ini membincangkan perbezaan antara crypt () dan password_hash () dalam php untuk hashing kata laluan, memberi tumpuan kepada pelaksanaan, keselamatan, dan kesesuaian untuk aplikasi web moden.

Bagaimanakah anda dapat mencegah skrip lintas tapak (XSS) dalam PHP?Bagaimanakah anda dapat mencegah skrip lintas tapak (XSS) dalam PHP?Apr 30, 2025 pm 03:38 PM

Artikel membincangkan mencegah skrip lintas tapak (XSS) dalam PHP melalui pengesahan input, pengekodan output, dan menggunakan alat seperti OWASP ESAPI dan pembersih HTML.

See all articles

Alat AI Hot

Undresser.AI Undress

Undresser.AI Undress

Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover

AI Clothes Remover

Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool

Undress AI Tool

Gambar buka pakaian secara percuma

Clothoff.io

Clothoff.io

Penyingkiran pakaian AI

Video Face Swap

Video Face Swap

Tukar muka dalam mana-mana video dengan mudah menggunakan alat tukar muka AI percuma kami!

Alat panas

DVWA

DVWA

Damn Vulnerable Web App (DVWA) ialah aplikasi web PHP/MySQL yang sangat terdedah. Matlamat utamanya adalah untuk menjadi bantuan bagi profesional keselamatan untuk menguji kemahiran dan alatan mereka dalam persekitaran undang-undang, untuk membantu pembangun web lebih memahami proses mengamankan aplikasi web, dan untuk membantu guru/pelajar mengajar/belajar dalam persekitaran bilik darjah Aplikasi web keselamatan. Matlamat DVWA adalah untuk mempraktikkan beberapa kelemahan web yang paling biasa melalui antara muka yang mudah dan mudah, dengan pelbagai tahap kesukaran. Sila ambil perhatian bahawa perisian ini

MantisBT

MantisBT

Mantis ialah alat pengesan kecacatan berasaskan web yang mudah digunakan yang direka untuk membantu dalam pengesanan kecacatan produk. Ia memerlukan PHP, MySQL dan pelayan web. Lihat perkhidmatan demo dan pengehosan kami.

SublimeText3 versi Cina

SublimeText3 versi Cina

Versi Cina, sangat mudah digunakan

SecLists

SecLists

SecLists ialah rakan penguji keselamatan muktamad. Ia ialah koleksi pelbagai jenis senarai yang kerap digunakan semasa penilaian keselamatan, semuanya di satu tempat. SecLists membantu menjadikan ujian keselamatan lebih cekap dan produktif dengan menyediakan semua senarai yang mungkin diperlukan oleh penguji keselamatan dengan mudah. Jenis senarai termasuk nama pengguna, kata laluan, URL, muatan kabur, corak data sensitif, cangkerang web dan banyak lagi. Penguji hanya boleh menarik repositori ini ke mesin ujian baharu dan dia akan mempunyai akses kepada setiap jenis senarai yang dia perlukan.

SublimeText3 versi Mac

SublimeText3 versi Mac

Perisian penyuntingan kod peringkat Tuhan (SublimeText3)