S 6 Семантикбасерт кодесок; EWSTПерекласти

Позначте код, який призначений для програмування програми, що зберігає лагрену за допомогою відкритого кілдекоду. Tradisjonelle kodesøkemotorer som Googles kodesøk, Koders eller Krugle gir tilgang til repositorier, men forenkler ikke programmererens jobb i å bruke koden. Де tar nøkkelord і povratnik potensielt hundrevis av kandatstykker av kode. Programmereren må da gå gjennom hver av disse returnnerte filene. De må da se om koden can være relevant. Hvis det er, må de lese det i detailj for å avgjøre om det er akkurat det de vil ha eller i det minste i nærheten av det. Для того, щоб розібратися з кодом для å oppfylle deres spesielle krav до навігації, форматування, feilhåndtering тощо.

Steven Reiss

Якщо ви перейдете на наступну стадію, ви перейдете на програмування, щоб дізнатися більше про хвар де віл ха, а також на систему, поки не дійдете до грубого арбідету з секке де повернення кодефрагменте, і в кінцевому підсумку для цього програмування. om forvandle koden tå å passe inn i målrammen. Попередній фронт є програмою, яка визначає семантику до де ønsker. Сюди входить нова форма у вигляді підпису, підпису, тестового файлу та підрядника (через JML) для функціональної специфікації, повний набір програм (див. Довідку на базі Java-моделей) та набір програм (у повній реалізації). I tillegg kan brukeren gi en contexte inn i hvilken koden vil pass. Frontenden forsøker å gjøre disse spesifikasjonene enkle å gi.

Systemet fungerer ved å bruke søkeordene for å få tilgang til en av de tilgjengelige kodesøkemotorer (eller en local kode søkemotor for kode tilgjengelig på Brown), for å få candidatler. Hver klasse eller method i disse filene (avhengig av hva brukeren søker etter) regnes som en potensiell løsning. Розділіть програму трансформатора відшкодувача за допомогою трансформатора і встановіть його на 30 трансформаторі, а також перейдіть на наступний код картки до нового програмного забезпечення за участю. Transformasjonene spenner fra det enkle (for eksempel å endre navnet på methoden for å matche signaturen) до комплекту (for eksempel å finne en linje and methoden som beregner en verdi av den returnnerte typen and deretter gjøre en bakoverskive til de eneste fri variane er verdier параметртипер). Усі додаткові трансформатори можуть бути використані для підписання матчу, більш віддаленого тестера та відповідного тесту, сигкерхецбегренінгер та JML-реглер. Іттерлігеровий трансформатор може перетворити базовий параметр на Resultene з випробувального рівня. Løsningene som prolaznik testene blir formatert i henhold til brukerens spesifiserte stil, sortert etter størrelse, kompleksitet eller ytelse i testene, і presenteres tilbake til brukeren.

Система може бути виконана (від часу до часу - нічого не знайдено) на http://conifer.cs.brown.edu/s6 .

У версії S6 ви можете скористатися системним посібником для більш тонкого brukergrensesnitt gitt en skisse av brukergrensesnittet і для test finne test tilfeller gitt kode som må testes.

папір

Semantikkbasert kodesøk, ICSE 2009, травень 2009.

Hunter: Next Generator Code Gjenbruk для Java від Yuepeng Want, Yu Feng, Ruben Martins, Arati Kaushik, Isil DIllig og Steven Reiss, FSE 2016.

Søker brukergrensesnittet від Steven Reiss, Yun Miao and Qi Xin, Automated Software Engineering Journal, 2017.