Начало работы с [закрытым] Программированием с использованием ограничительного языка

Сервер

import java.net.*;
import java.io.*;
import java.util.*;
import javax.net.ssl.*;
import javax.net.*;
class Test{
  public static void main(String[] args){
    try{
      SSLContext context = SSLContext.getInstance("TLSv1.2");
      context.init(null,null,null);
      SSLServerSocketFactory serverSocketFactory = context.getServerSocketFactory();
      SSLServerSocket server = (SSLServerSocket)serverSocketFactory.createServerSocket(1024);
      server.setEnabledCipherSuites(server.getSupportedCipherSuites());
      SSLSocket socket = (SSLSocket)server.accept();
      DataInputStream in = new DataInputStream(socket.getInputStream());
      DataOutputStream out = new DataOutputStream(socket.getOutputStream());
      System.out.println(in.readInt());
    }catch(Exception e){e.printStackTrace();}
  }
}

Клиент

import java.net.*;
import java.io.*;
import java.util.*;
import javax.net.ssl.*;
import javax.net.*;
class Test2{
  public static void main(String[] args){
    try{
      SSLContext context = SSLContext.getInstance("TLSv1.2");
      context.init(null,null,null);
      SSLSocketFactory socketFactory = context.getSocketFactory();
      SSLSocket socket = (SSLSocket)socketFactory.createSocket("localhost", 1024);
      socket.setEnabledCipherSuites(socket.getSupportedCipherSuites());
      DataInputStream in = new DataInputStream(socket.getInputStream());
      DataOutputStream out = new DataOutputStream(socket.getOutputStream());
      out.writeInt(1337);     
    }catch(Exception e){e.printStackTrace();}
  }
}

server.setEnabledCipherSuites (server.getSupportedCipherSuites ()); socket.setEnabledCipherSuites (socket.getSupportedCipherSuites ()); [/ д2]

39
задан Larsenal 27 November 2008 в 03:42
поделиться

8 ответов

Существует много превосходного материала, имеющегося в сети, после того как Вы входите в канавку, но ссылки ниже являются хорошими начальными точками (IMO) (те, я использовал).

Программирование с Ограничениями: Введение - (Веб-сайт курса)
Программирование с Ограничениями: Введение - (книга Google)
Руководство Онлайн по Программированию с использованием ограничительного языка

18
ответ дан 27 November 2019 в 02:50
поделиться

Возможно, можно взглянуть на вводное курс мысль в Саарландском университете о программировании с использованием ограничительного языка. Они не используют mozart в качестве сказанный dr_pepper, но Gecode. Gecode является последующим языком mozart, реализованного частично теми же людьми.

6
ответ дан 27 November 2019 в 02:50
поделиться

Я рекомендую начать с mozart. Это - язык программирования с использованием ограничительного языка с открытым исходным кодом, и сайт имеет много документации, которая запустит Вас.

4
ответ дан 27 November 2019 в 02:50
поделиться
0
ответ дан 27 November 2019 в 02:50
поделиться

руководство программирования с использованием ограничительного языка хорошо думается.

В мелочах, мой супервизор с четвертого года на университет (который был только что теперь) ссылаются там. :)

0
ответ дан 27 November 2019 в 02:50
поделиться

Вот еще одна ссылка на сайт курса Программирование с ограничениями .

Раньше в курсе использовался Моцарт / Оз для заданий, но теперь он был заменен на Gecode .

3
ответ дан 27 November 2019 в 02:50
поделиться

Правила обработки ограничений (CHR) - это язык для разработки собственных (специфичных для задачи) средств решения ограничений. Проверьте это:

Там вы найдете ссылки на

  • Интернет-демонстрацию WebCHR (первоначально разработанную в LMU в Мюнхене, теперь усовершенствованную в Uni Ulm)
  • Несколько реализаций для Prolog (естественно) и Haskell , а также (к сожалению, не поддерживаемый) прототип для Java (JCK).

Существует также реализация CHR в JavaScript: http://chrjs.net ( https://github.com/fnogatz/CHR.js )

9
ответ дан 27 November 2019 в 02:50
поделиться

Microsoft Solver Foundation содержит несколько простых для понимания примеров.

1
ответ дан 27 November 2019 в 02:50
поделиться
Другие вопросы по тегам:

Похожие вопросы: